nonfunctional testing directory - just so I can see how it compiles.
authorhansonr <hansonr@STO24954W.ad.stolaf.edu>
Wed, 17 Oct 2018 17:17:05 +0000 (12:17 -0500)
committerhansonr <hansonr@STO24954W.ad.stolaf.edu>
Wed, 17 Oct 2018 17:17:05 +0000 (12:17 -0500)
.project
.settings/org.eclipse.jdt.core.prefs
.settings/org.eclipse.jdt.ui.prefs
src/jalview/xml/binding/jalviewBH/JalviewModel.java [new file with mode: 0644]
src/jalview/xml/binding/jalviewBH/SequenceSet.java [new file with mode: 0644]
src/jalview/xml/binding/jalviewBH/VAMSAS.java [new file with mode: 0644]

index d0dfc7e..6c40472 100644 (file)
--- a/.project
+++ b/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-       <name>Jalview Release 2.7</name>
+       <name>Jalview Release 2.7-old</name>
        <comment></comment>
        <projects>
        </projects>
index 50912cd..2d3c802 100644 (file)
@@ -105,287 +105,4 @@ org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
 org.eclipse.jdt.core.compiler.release=disabled
 org.eclipse.jdt.core.compiler.source=1.8
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=52
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=next_line_on_wrap
-org.eclipse.jdt.core.formatter.brace_position_for_block=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=next_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=next_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=false
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=4
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=8
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=true
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=76
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=2
-org.eclipse.jdt.core.formatter.use_on_off_tags=true
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
index 2de9ab9..2b24877 100644 (file)
@@ -1,67 +1,7 @@
 eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_Jalview
-formatter_settings_version=12
+formatter_settings_version=14
 org.eclipse.jdt.ui.ignorelowercasenames=true
 org.eclipse.jdt.ui.importorder=jalview;java;javax;org;com;
 org.eclipse.jdt.ui.ondemandthreshold=99
 org.eclipse.jdt.ui.staticondemandthreshold=99
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=false
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=false
-sp_cleanup.remove_redundant_type_arguments=false
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
 sp_cleanup.use_type_arguments=false
diff --git a/src/jalview/xml/binding/jalviewBH/JalviewModel.java b/src/jalview/xml/binding/jalviewBH/JalviewModel.java
new file mode 100644 (file)
index 0000000..413c3dd
--- /dev/null
@@ -0,0 +1,5241 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2018.09.18 at 04:36:20 PM BST 
+//
+
+package jalview.xml.binding.jalviewBH;
+
+import jalview.schemabinding.version2.AnnotationColourScheme;
+import jalview.schemabinding.version2.WebServiceParameterSet;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlID;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+/**
+ * <p>
+ * Java class for JalviewModel complex type.
+ * 
+ * <p>
+ * The following schema fragment specifies the expected content contained within
+ * this class.
+ * 
+ * <pre>
+ * &lt;complexType name="JalviewModel">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element name="creationDate" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
+ *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         &lt;element name="vamsasModel" type="{www.vamsas.ac.uk/jalview/version2}VAMSAS"/>
+ *         &lt;sequence>
+ *           &lt;element name="JSeq" maxOccurs="unbounded" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence>
+ *                     &lt;element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
+ *                     &lt;element name="pdbids" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;extension base="{www.jalview.org}pdbentry">
+ *                             &lt;sequence>
+ *                               &lt;element name="structureState" maxOccurs="unbounded" minOccurs="0">
+ *                                 &lt;complexType>
+ *                                   &lt;simpleContent>
+ *                                     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *                                       &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+ *                                       &lt;attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                                       &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                                       &lt;attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                                       &lt;attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                                       &lt;attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                                       &lt;attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                                     &lt;/extension>
+ *                                   &lt;/simpleContent>
+ *                                 &lt;/complexType>
+ *                               &lt;/element>
+ *                             &lt;/sequence>
+ *                           &lt;/extension>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                     &lt;element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
+ *                     &lt;element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                             &lt;sequence>
+ *                               &lt;element name="secondaryStructure" maxOccurs="unbounded">
+ *                                 &lt;complexType>
+ *                                   &lt;complexContent>
+ *                                     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                                       &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                                       &lt;attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                                       &lt;attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                                       &lt;attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                                     &lt;/restriction>
+ *                                   &lt;/complexContent>
+ *                                 &lt;/complexType>
+ *                               &lt;/element>
+ *                             &lt;/sequence>
+ *                             &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+ *                             &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                             &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                             &lt;attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                             &lt;attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                           &lt;/restriction>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                   &lt;/sequence>
+ *                   &lt;attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *           &lt;element name="JGroup" maxOccurs="unbounded" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence>
+ *                     &lt;element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
+ *                     &lt;element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
+ *                   &lt;/sequence>
+ *                   &lt;attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *           &lt;element name="Viewport" maxOccurs="unbounded" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence>
+ *                     &lt;element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
+ *                     &lt;element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                             &lt;attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                             &lt;attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                           &lt;/restriction>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                     &lt;element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
+ *                             &lt;attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                             &lt;attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                             &lt;attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                           &lt;/extension>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                   &lt;/sequence>
+ *                   &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+ *                   &lt;attribute name="conservationSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="pidSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ *                   &lt;attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *                   &lt;attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *                   &lt;attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *           &lt;element name="UserColours" maxOccurs="unbounded" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence>
+ *                     &lt;element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
+ *                   &lt;/sequence>
+ *                   &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *           &lt;element name="tree" maxOccurs="unbounded" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence minOccurs="0">
+ *                     &lt;element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *                     &lt;element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *                   &lt;/sequence>
+ *                   &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+ *                   &lt;attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                   &lt;attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                   &lt;attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+ *                   &lt;attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                   &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *           &lt;element name="FeatureSettings" minOccurs="0">
+ *             &lt;complexType>
+ *               &lt;complexContent>
+ *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                   &lt;sequence>
+ *                     &lt;element name="setting" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                             &lt;sequence>
+ *                               &lt;element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
+ *                               &lt;element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
+ *                             &lt;/sequence>
+ *                             &lt;attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                             &lt;attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                             &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                             &lt;attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
+ *                             &lt;attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                             &lt;attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
+ *                             &lt;attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+ *                             &lt;attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *                             &lt;attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
+ *                             &lt;attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
+ *                             &lt;attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                             &lt;attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                           &lt;/restriction>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                     &lt;element name="group" maxOccurs="unbounded" minOccurs="0">
+ *                       &lt;complexType>
+ *                         &lt;complexContent>
+ *                           &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                             &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                             &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ *                           &lt;/restriction>
+ *                         &lt;/complexContent>
+ *                       &lt;/complexType>
+ *                     &lt;/element>
+ *                   &lt;/sequence>
+ *                 &lt;/restriction>
+ *               &lt;/complexContent>
+ *             &lt;/complexType>
+ *           &lt;/element>
+ *         &lt;/sequence>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(
+  name = "JalviewModel",
+  namespace = "www.jalview.org",
+  propOrder =
+  { "creationDate", "version", "vamsasModel", "jSeq", "jGroup", "viewport",
+      "userColours", "tree", "featureSettings" })
+public class JalviewModel
+{
+
+  @XmlElement(required = true)
+  @XmlSchemaType(name = "dateTime")
+  protected XMLGregorianCalendar creationDate;
+
+  @XmlElement(required = true)
+  protected String version;
+
+  @XmlElement(required = true)
+  protected VAMSAS vamsasModel;
+
+  @XmlElement(name = "JSeq")
+  protected List<JalviewModel.JSeq> jSeq;
+
+  @XmlElement(name = "JGroup")
+  protected List<JalviewModel.JGroup> jGroup;
+
+  @XmlElement(name = "Viewport")
+  protected List<JalviewModel.Viewport> viewport;
+
+  @XmlElement(name = "UserColours")
+  protected List<JalviewModel.UserColours> userColours;
+
+  protected List<JalviewModel.Tree> tree;
+
+
+  @XmlElement(nillable=true)
+  protected String bhTest = "bhtest";
+
+  @XmlElement(name = "FeatureSettings")
+  protected JalviewModel.FeatureSettings featureSettings;
+
+  /**
+   * Gets the value of the creationDate property.
+   * 
+   * @return possible object is {@link XMLGregorianCalendar }
+   * 
+   */
+  public XMLGregorianCalendar getCreationDate()
+  {
+    return creationDate;
+  }
+
+  /**
+   * Sets the value of the creationDate property.
+   * 
+   * @param value
+   *          allowed object is {@link XMLGregorianCalendar }
+   * 
+   */
+  public void setCreationDate(XMLGregorianCalendar value)
+  {
+    this.creationDate = value;
+  }
+
+  /**
+   * Gets the value of the version property.
+   * 
+   * @return possible object is {@link String }
+   * 
+   */
+  public String getVersion()
+  {
+    return version;
+  }
+
+  /**
+   * Sets the value of the version property.
+   * 
+   * @param value
+   *          allowed object is {@link String }
+   * 
+   */
+  public void setVersion(String value)
+  {
+    this.version = value;
+  }
+
+  /**
+   * Gets the value of the vamsasModel property.
+   * 
+   * @return possible object is {@link VAMSAS }
+   * 
+   */
+  public VAMSAS getVamsasModel()
+  {
+    return vamsasModel;
+  }
+
+  /**
+   * Sets the value of the vamsasModel property.
+   * 
+   * @param value
+   *          allowed object is {@link VAMSAS }
+   * 
+   */
+  public void setVamsasModel(VAMSAS value)
+  {
+    this.vamsasModel = value;
+  }
+
+  /**
+   * Gets the value of the jSeq property.
+   * 
+   * <p>
+   * This accessor method returns a reference to the live list, not a snapshot.
+   * Therefore any modification you make to the returned list will be present
+   * inside the JAXB object. This is why there is not a <CODE>set</CODE> method
+   * for the jSeq property.
+   * 
+   * <p>
+   * For example, to add a new item, do as follows:
+   * 
+   * <pre>
+   * getJSeq().add(newItem);
+   * </pre>
+   * 
+   * 
+   * <p>
+   * Objects of the following type(s) are allowed in the list
+   * {@link JalviewModel.JSeq }
+   * 
+   * 
+   */
+  public List<JalviewModel.JSeq> getJSeq()
+  {
+    if (jSeq == null)
+    {
+      jSeq = new ArrayList<JalviewModel.JSeq>();
+    }
+    return this.jSeq;
+  }
+
+  /**
+   * Gets the value of the jGroup property.
+   * 
+   * <p>
+   * This accessor method returns a reference to the live list, not a snapshot.
+   * Therefore any modification you make to the returned list will be present
+   * inside the JAXB object. This is why there is not a <CODE>set</CODE> method
+   * for the jGroup property.
+   * 
+   * <p>
+   * For example, to add a new item, do as follows:
+   * 
+   * <pre>
+   * getJGroup().add(newItem);
+   * </pre>
+   * 
+   * 
+   * <p>
+   * Objects of the following type(s) are allowed in the list
+   * {@link JalviewModel.JGroup }
+   * 
+   * 
+   */
+  public List<JalviewModel.JGroup> getJGroup()
+  {
+    if (jGroup == null)
+    {
+      jGroup = new ArrayList<JalviewModel.JGroup>();
+    }
+    return this.jGroup;
+  }
+
+  /**
+   * Gets the value of the viewport property.
+   * 
+   * <p>
+   * This accessor method returns a reference to the live list, not a snapshot.
+   * Therefore any modification you make to the returned list will be present
+   * inside the JAXB object. This is why there is not a <CODE>set</CODE> method
+   * for the viewport property.
+   * 
+   * <p>
+   * For example, to add a new item, do as follows:
+   * 
+   * <pre>
+   * getViewport().add(newItem);
+   * </pre>
+   * 
+   * 
+   * <p>
+   * Objects of the following type(s) are allowed in the list
+   * {@link JalviewModel.Viewport }
+   * 
+   * 
+   */
+  public List<JalviewModel.Viewport> getViewport()
+  {
+    if (viewport == null)
+    {
+      viewport = new ArrayList<JalviewModel.Viewport>();
+    }
+    return this.viewport;
+  }
+
+  /**
+   * Gets the value of the userColours property.
+   * 
+   * <p>
+   * This accessor method returns a reference to the live list, not a snapshot.
+   * Therefore any modification you make to the returned list will be present
+   * inside the JAXB object. This is why there is not a <CODE>set</CODE> method
+   * for the userColours property.
+   * 
+   * <p>
+   * For example, to add a new item, do as follows:
+   * 
+   * <pre>
+   * getUserColours().add(newItem);
+   * </pre>
+   * 
+   * 
+   * <p>
+   * Objects of the following type(s) are allowed in the list
+   * {@link JalviewModel.UserColours }
+   * 
+   * 
+   */
+  public List<JalviewModel.UserColours> getUserColours()
+  {
+    if (userColours == null)
+    {
+      userColours = new ArrayList<JalviewModel.UserColours>();
+    }
+    return this.userColours;
+  }
+
+  /**
+   * Gets the value of the tree property.
+   * 
+   * <p>
+   * This accessor method returns a reference to the live list, not a snapshot.
+   * Therefore any modification you make to the returned list will be present
+   * inside the JAXB object. This is why there is not a <CODE>set</CODE> method
+   * for the tree property.
+   * 
+   * <p>
+   * For example, to add a new item, do as follows:
+   * 
+   * <pre>
+   * getTree().add(newItem);
+   * </pre>
+   * 
+   * 
+   * <p>
+   * Objects of the following type(s) are allowed in the list
+   * {@link JalviewModel.Tree }
+   * 
+   * 
+   */
+  public List<JalviewModel.Tree> getTree()
+  {
+    if (tree == null)
+    {
+      tree = new ArrayList<JalviewModel.Tree>();
+    }
+    return this.tree;
+  }
+
+  /**
+   * Gets the value of the featureSettings property.
+   * 
+   * @return possible object is {@link JalviewModel.FeatureSettings }
+   * 
+   */
+  public JalviewModel.FeatureSettings getFeatureSettings()
+  {
+    return featureSettings;
+  }
+
+  /**
+   * Sets the value of the featureSettings property.
+   * 
+   * @param value
+   *          allowed object is {@link JalviewModel.FeatureSettings }
+   * 
+   */
+  public void setFeatureSettings(JalviewModel.FeatureSettings value)
+  {
+    this.featureSettings = value;
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence>
+   *         &lt;element name="setting" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *                 &lt;sequence>
+   *                   &lt;element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
+   *                   &lt;element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
+   *                 &lt;/sequence>
+   *                 &lt;attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                 &lt;attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *                 &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *                 &lt;attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
+   *                 &lt;attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *                 &lt;attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
+   *                 &lt;attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+   *                 &lt;attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *                 &lt;attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
+   *                 &lt;attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
+   *                 &lt;attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *                 &lt;attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *               &lt;/restriction>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *         &lt;element name="group" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *                 &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                 &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *               &lt;/restriction>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *       &lt;/sequence>
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(name = "", propOrder = { "setting", "group" })
+  public static class FeatureSettings
+  {
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.FeatureSettings.Setting> setting;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.FeatureSettings.Group> group;
+
+    /**
+     * Gets the value of the setting property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the setting property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getSetting().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.FeatureSettings.Setting }
+     * 
+     * 
+     */
+    public List<JalviewModel.FeatureSettings.Setting> getSetting()
+    {
+      if (setting == null)
+      {
+        setting = new ArrayList<JalviewModel.FeatureSettings.Setting>();
+      }
+      return this.setting;
+    }
+
+    /**
+     * Gets the value of the group property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the group property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getGroup().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.FeatureSettings.Group }
+     * 
+     * 
+     */
+    public List<JalviewModel.FeatureSettings.Group> getGroup()
+    {
+      if (group == null)
+      {
+        group = new ArrayList<JalviewModel.FeatureSettings.Group>();
+      }
+      return this.group;
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *     &lt;/restriction>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "")
+    public static class Group
+    {
+
+      @XmlAttribute(name = "name", required = true)
+      protected String name;
+
+      @XmlAttribute(name = "display", required = true)
+      protected boolean display;
+
+      /**
+       * Gets the value of the name property.
+       * 
+       * @return possible object is {@link String }
+       * 
+       */
+      public String getName()
+      {
+        return name;
+      }
+
+      /**
+       * Sets the value of the name property.
+       * 
+       * @param value
+       *          allowed object is {@link String }
+       * 
+       */
+      public void setName(String value)
+      {
+        this.name = value;
+      }
+
+      /**
+       * Gets the value of the display property.
+       * 
+       */
+      public boolean isDisplay()
+      {
+        return display;
+      }
+
+      /**
+       * Sets the value of the display property.
+       * 
+       */
+      public void setDisplay(boolean value)
+      {
+        this.display = value;
+      }
+
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       &lt;sequence>
+     *         &lt;element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
+     *         &lt;element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
+     *       &lt;/sequence>
+     *       &lt;attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *       &lt;attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *       &lt;attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
+     *       &lt;attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *       &lt;attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
+     *       &lt;attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+     *       &lt;attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *       &lt;attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
+     *       &lt;attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
+     *       &lt;attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *       &lt;attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *     &lt;/restriction>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "", propOrder = { "attributeName", "matcherSet" })
+    public static class Setting
+    {
+
+      @XmlElement(namespace = "www.jalview.org")
+      protected List<String> attributeName;
+
+      @XmlElement(namespace = "www.jalview.org")
+      protected Object/*FeatureMatcherSet*/ matcherSet;
+
+      @XmlAttribute(name = "type", required = true)
+      protected String type;
+
+      @XmlAttribute(name = "colour", required = true)
+      protected int colour;
+
+      @XmlAttribute(name = "display", required = true)
+      protected boolean display;
+
+      @XmlAttribute(name = "order")
+      protected Float order;
+
+      @XmlAttribute(name = "mincolour")
+      protected Integer mincolour;
+
+      @XmlAttribute(name = "noValueColour")
+      protected Object/*NoValueColour*/ noValueColour;
+
+      @XmlAttribute(name = "threshold")
+      protected Float threshold;
+
+      @XmlAttribute(name = "threshstate")
+      protected Integer threshstate;
+
+      @XmlAttribute(name = "max")
+      protected Float max;
+
+      @XmlAttribute(name = "min")
+      protected Float min;
+
+      @XmlAttribute(name = "colourByLabel")
+      protected Boolean colourByLabel;
+
+      @XmlAttribute(name = "autoScale")
+      protected Boolean autoScale;
+
+      /**
+       * Gets the value of the attributeName property.
+       * 
+       * <p>
+       * This accessor method returns a reference to the live list, not a
+       * snapshot. Therefore any modification you make to the returned list will
+       * be present inside the JAXB object. This is why there is not a
+       * <CODE>set</CODE> method for the attributeName property.
+       * 
+       * <p>
+       * For example, to add a new item, do as follows:
+       * 
+       * <pre>
+       * getAttributeName().add(newItem);
+       * </pre>
+       * 
+       * 
+       * <p>
+       * Objects of the following type(s) are allowed in the list {@link String
+       * }
+       * 
+       * 
+       */
+      public List<String> getAttributeName()
+      {
+        if (attributeName == null)
+        {
+          attributeName = new ArrayList<String>();
+        }
+        return this.attributeName;
+      }
+
+      /**
+       * Gets the value of the matcherSet property.
+       * 
+       * @return possible object is {@link FeatureMatcherSet }
+       * 
+       */
+      public Object/*FeatureMatcherSet*/ getMatcherSet()
+      {
+        return matcherSet;
+      }
+
+      /**
+       * Sets the value of the matcherSet property.
+       * 
+       * @param value
+       *          allowed object is {@link FeatureMatcherSet }
+       * 
+       */
+      public void setMatcherSet(Object/*FeatureMatcherSet*/ value)
+      {
+        this.matcherSet = value;
+      }
+
+      /**
+       * Gets the value of the type property.
+       * 
+       * @return possible object is {@link String }
+       * 
+       */
+      public String getType()
+      {
+        return type;
+      }
+
+      /**
+       * Sets the value of the type property.
+       * 
+       * @param value
+       *          allowed object is {@link String }
+       * 
+       */
+      public void setType(String value)
+      {
+        this.type = value;
+      }
+
+      /**
+       * Gets the value of the colour property.
+       * 
+       */
+      public int getColour()
+      {
+        return colour;
+      }
+
+      /**
+       * Sets the value of the colour property.
+       * 
+       */
+      public void setColour(int value)
+      {
+        this.colour = value;
+      }
+
+      /**
+       * Gets the value of the display property.
+       * 
+       */
+      public boolean isDisplay()
+      {
+        return display;
+      }
+
+      /**
+       * Sets the value of the display property.
+       * 
+       */
+      public void setDisplay(boolean value)
+      {
+        this.display = value;
+      }
+
+      /**
+       * Gets the value of the order property.
+       * 
+       * @return possible object is {@link Float }
+       * 
+       */
+      public Float getOrder()
+      {
+        return order;
+      }
+
+      /**
+       * Sets the value of the order property.
+       * 
+       * @param value
+       *          allowed object is {@link Float }
+       * 
+       */
+      public void setOrder(Float value)
+      {
+        this.order = value;
+      }
+
+      /**
+       * Gets the value of the mincolour property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getMincolour()
+      {
+        return mincolour;
+      }
+
+      /**
+       * Sets the value of the mincolour property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setMincolour(Integer value)
+      {
+        this.mincolour = value;
+      }
+
+      /**
+       * Gets the value of the noValueColour property.
+       * 
+       * @return possible object is {@link NoValueColour }
+       * 
+       */
+      public Object/*NoValueColour*/  getNoValueColour()
+      {
+        if (noValueColour == null)
+        {
+                                       return null/* NoValueColour */;// NoValueColour.MIN;
+        }
+        else
+        {
+          return noValueColour;
+        }
+      }
+
+      /**
+       * Sets the value of the noValueColour property.
+       * 
+       * @param value
+       *          allowed object is {@link NoValueColour }
+       * 
+       */
+      public void setNoValueColour(Object/*NoValueColour*/ value)
+      {
+        this.noValueColour = value;
+      }
+
+      /**
+       * Gets the value of the threshold property.
+       * 
+       * @return possible object is {@link Float }
+       * 
+       */
+      public Float getThreshold()
+      {
+        return threshold;
+      }
+
+      /**
+       * Sets the value of the threshold property.
+       * 
+       * @param value
+       *          allowed object is {@link Float }
+       * 
+       */
+      public void setThreshold(Float value)
+      {
+        this.threshold = value;
+      }
+
+      /**
+       * Gets the value of the threshstate property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getThreshstate()
+      {
+        return threshstate;
+      }
+
+      /**
+       * Sets the value of the threshstate property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setThreshstate(Integer value)
+      {
+        this.threshstate = value;
+      }
+
+      /**
+       * Gets the value of the max property.
+       * 
+       * @return possible object is {@link Float }
+       * 
+       */
+      public Float getMax()
+      {
+        return max;
+      }
+
+      /**
+       * Sets the value of the max property.
+       * 
+       * @param value
+       *          allowed object is {@link Float }
+       * 
+       */
+      public void setMax(Float value)
+      {
+        this.max = value;
+      }
+
+      /**
+       * Gets the value of the min property.
+       * 
+       * @return possible object is {@link Float }
+       * 
+       */
+      public Float getMin()
+      {
+        return min;
+      }
+
+      /**
+       * Sets the value of the min property.
+       * 
+       * @param value
+       *          allowed object is {@link Float }
+       * 
+       */
+      public void setMin(Float value)
+      {
+        this.min = value;
+      }
+
+      /**
+       * Gets the value of the colourByLabel property.
+       * 
+       * @return possible object is {@link Boolean }
+       * 
+       */
+      public Boolean isColourByLabel()
+      {
+        return colourByLabel;
+      }
+
+      /**
+       * Sets the value of the colourByLabel property.
+       * 
+       * @param value
+       *          allowed object is {@link Boolean }
+       * 
+       */
+      public void setColourByLabel(Boolean value)
+      {
+        this.colourByLabel = value;
+      }
+
+      /**
+       * Gets the value of the autoScale property.
+       * 
+       * @return possible object is {@link Boolean }
+       * 
+       */
+      public Boolean isAutoScale()
+      {
+        return autoScale;
+      }
+
+      /**
+       * Sets the value of the autoScale property.
+       * 
+       * @param value
+       *          allowed object is {@link Boolean }
+       * 
+       */
+      public void setAutoScale(Boolean value)
+      {
+        this.autoScale = value;
+      }
+
+    }
+
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence>
+   *         &lt;element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
+   *         &lt;element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
+   *       &lt;/sequence>
+   *       &lt;attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(name = "", propOrder = { "seq", "annotationColours" })
+  public static class JGroup
+  {
+
+    @XmlElement(namespace = "www.jalview.org", required = true)
+    protected List<String> seq;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected AnnotationColourScheme annotationColours;
+
+    @XmlAttribute(name = "start")
+    protected Integer start;
+
+    @XmlAttribute(name = "end")
+    protected Integer end;
+
+    @XmlAttribute(name = "name")
+    protected String name;
+
+    @XmlAttribute(name = "colour")
+    protected String colour;
+
+    @XmlAttribute(name = "consThreshold")
+    protected Integer consThreshold;
+
+    @XmlAttribute(name = "pidThreshold")
+    protected Integer pidThreshold;
+
+    @XmlAttribute(name = "outlineColour")
+    protected Integer outlineColour;
+
+    @XmlAttribute(name = "displayBoxes")
+    protected Boolean displayBoxes;
+
+    @XmlAttribute(name = "displayText")
+    protected Boolean displayText;
+
+    @XmlAttribute(name = "colourText")
+    protected Boolean colourText;
+
+    @XmlAttribute(name = "textCol1")
+    protected Integer textCol1;
+
+    @XmlAttribute(name = "textCol2")
+    protected Integer textCol2;
+
+    @XmlAttribute(name = "textColThreshold")
+    protected Integer textColThreshold;
+
+    @XmlAttribute(name = "showUnconserved")
+    protected Boolean showUnconserved;
+
+    @XmlAttribute(name = "ignoreGapsinConsensus")
+    protected Boolean ignoreGapsinConsensus;
+
+    @XmlAttribute(name = "showConsensusHistogram")
+    protected Boolean showConsensusHistogram;
+
+    @XmlAttribute(name = "showSequenceLogo")
+    protected Boolean showSequenceLogo;
+
+    @XmlAttribute(name = "normaliseSequenceLogo")
+    protected Boolean normaliseSequenceLogo;
+
+    @XmlAttribute(name = "id")
+    protected String id;
+
+    /**
+     * Gets the value of the seq property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the seq property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getSeq().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list {@link String }
+     * 
+     * 
+     */
+    public List<String> getSeq()
+    {
+      if (seq == null)
+      {
+        seq = new ArrayList<String>();
+      }
+      return this.seq;
+    }
+
+    /**
+     * Gets the value of the annotationColours property.
+     * 
+     * @return possible object is {@link AnnotationColourScheme }
+     * 
+     */
+    public AnnotationColourScheme getAnnotationColours()
+    {
+      return annotationColours;
+    }
+
+    /**
+     * Sets the value of the annotationColours property.
+     * 
+     * @param value
+     *          allowed object is {@link AnnotationColourScheme }
+     * 
+     */
+    public void setAnnotationColours(AnnotationColourScheme value)
+    {
+      this.annotationColours = value;
+    }
+
+    /**
+     * Gets the value of the start property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getStart()
+    {
+      return start;
+    }
+
+    /**
+     * Sets the value of the start property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setStart(Integer value)
+    {
+      this.start = value;
+    }
+
+    /**
+     * Gets the value of the end property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getEnd()
+    {
+      return end;
+    }
+
+    /**
+     * Sets the value of the end property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setEnd(Integer value)
+    {
+      this.end = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getName()
+    {
+      return name;
+    }
+
+    /**
+     * Sets the value of the name property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setName(String value)
+    {
+      this.name = value;
+    }
+
+    /**
+     * Gets the value of the colour property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getColour()
+    {
+      return colour;
+    }
+
+    /**
+     * Sets the value of the colour property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setColour(String value)
+    {
+      this.colour = value;
+    }
+
+    /**
+     * Gets the value of the consThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getConsThreshold()
+    {
+      return consThreshold;
+    }
+
+    /**
+     * Sets the value of the consThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setConsThreshold(Integer value)
+    {
+      this.consThreshold = value;
+    }
+
+    /**
+     * Gets the value of the pidThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getPidThreshold()
+    {
+      return pidThreshold;
+    }
+
+    /**
+     * Sets the value of the pidThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setPidThreshold(Integer value)
+    {
+      this.pidThreshold = value;
+    }
+
+    /**
+     * Gets the value of the outlineColour property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getOutlineColour()
+    {
+      return outlineColour;
+    }
+
+    /**
+     * Sets the value of the outlineColour property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setOutlineColour(Integer value)
+    {
+      this.outlineColour = value;
+    }
+
+    /**
+     * Gets the value of the displayBoxes property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isDisplayBoxes()
+    {
+      return displayBoxes;
+    }
+
+    /**
+     * Sets the value of the displayBoxes property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setDisplayBoxes(Boolean value)
+    {
+      this.displayBoxes = value;
+    }
+
+    /**
+     * Gets the value of the displayText property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isDisplayText()
+    {
+      return displayText;
+    }
+
+    /**
+     * Sets the value of the displayText property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setDisplayText(Boolean value)
+    {
+      this.displayText = value;
+    }
+
+    /**
+     * Gets the value of the colourText property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isColourText()
+    {
+      return colourText;
+    }
+
+    /**
+     * Sets the value of the colourText property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setColourText(Boolean value)
+    {
+      this.colourText = value;
+    }
+
+    /**
+     * Gets the value of the textCol1 property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextCol1()
+    {
+      return textCol1;
+    }
+
+    /**
+     * Sets the value of the textCol1 property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextCol1(Integer value)
+    {
+      this.textCol1 = value;
+    }
+
+    /**
+     * Gets the value of the textCol2 property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextCol2()
+    {
+      return textCol2;
+    }
+
+    /**
+     * Sets the value of the textCol2 property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextCol2(Integer value)
+    {
+      this.textCol2 = value;
+    }
+
+    /**
+     * Gets the value of the textColThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextColThreshold()
+    {
+      return textColThreshold;
+    }
+
+    /**
+     * Sets the value of the textColThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextColThreshold(Integer value)
+    {
+      this.textColThreshold = value;
+    }
+
+    /**
+     * Gets the value of the showUnconserved property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowUnconserved()
+    {
+      return showUnconserved;
+    }
+
+    /**
+     * Sets the value of the showUnconserved property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowUnconserved(Boolean value)
+    {
+      this.showUnconserved = value;
+    }
+
+    /**
+     * Gets the value of the ignoreGapsinConsensus property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isIgnoreGapsinConsensus()
+    {
+      if (ignoreGapsinConsensus == null)
+      {
+        return true;
+      }
+      else
+      {
+        return ignoreGapsinConsensus;
+      }
+    }
+
+    /**
+     * Sets the value of the ignoreGapsinConsensus property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setIgnoreGapsinConsensus(Boolean value)
+    {
+      this.ignoreGapsinConsensus = value;
+    }
+
+    /**
+     * Gets the value of the showConsensusHistogram property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowConsensusHistogram()
+    {
+      if (showConsensusHistogram == null)
+      {
+        return true;
+      }
+      else
+      {
+        return showConsensusHistogram;
+      }
+    }
+
+    /**
+     * Sets the value of the showConsensusHistogram property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowConsensusHistogram(Boolean value)
+    {
+      this.showConsensusHistogram = value;
+    }
+
+    /**
+     * Gets the value of the showSequenceLogo property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowSequenceLogo()
+    {
+      if (showSequenceLogo == null)
+      {
+        return false;
+      }
+      else
+      {
+        return showSequenceLogo;
+      }
+    }
+
+    /**
+     * Sets the value of the showSequenceLogo property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowSequenceLogo(Boolean value)
+    {
+      this.showSequenceLogo = value;
+    }
+
+    /**
+     * Gets the value of the normaliseSequenceLogo property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isNormaliseSequenceLogo()
+    {
+      if (normaliseSequenceLogo == null)
+      {
+        return false;
+      }
+      else
+      {
+        return normaliseSequenceLogo;
+      }
+    }
+
+    /**
+     * Sets the value of the normaliseSequenceLogo property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setNormaliseSequenceLogo(Boolean value)
+    {
+      this.normaliseSequenceLogo = value;
+    }
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getId()
+    {
+      return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setId(String value)
+    {
+      this.id = value;
+    }
+
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence>
+   *         &lt;element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
+   *         &lt;element name="pdbids" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;extension base="{www.jalview.org}pdbentry">
+   *                 &lt;sequence>
+   *                   &lt;element name="structureState" maxOccurs="unbounded" minOccurs="0">
+   *                     &lt;complexType>
+   *                       &lt;simpleContent>
+   *                         &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+   *                           &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+   *                           &lt;attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *                           &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                           &lt;attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *                           &lt;attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *                           &lt;attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *                           &lt;attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                         &lt;/extension>
+   *                       &lt;/simpleContent>
+   *                     &lt;/complexType>
+   *                   &lt;/element>
+   *                 &lt;/sequence>
+   *               &lt;/extension>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *         &lt;element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
+   *         &lt;element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *                 &lt;sequence>
+   *                   &lt;element name="secondaryStructure" maxOccurs="unbounded">
+   *                     &lt;complexType>
+   *                       &lt;complexContent>
+   *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *                           &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                           &lt;attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                           &lt;attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *                           &lt;attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                         &lt;/restriction>
+   *                       &lt;/complexContent>
+   *                     &lt;/complexType>
+   *                   &lt;/element>
+   *                 &lt;/sequence>
+   *                 &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+   *                 &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                 &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                 &lt;attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *                 &lt;attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *               &lt;/restriction>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *       &lt;/sequence>
+   *       &lt;attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(
+    name = "",
+    propOrder =
+    { "features", "pdbids", "hiddenSequences", "rnaViewer" })
+  public static class JSeq
+  {
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<Object/*Feature*/> features;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.JSeq.Pdbids> pdbids;
+
+    @XmlElement(namespace = "www.jalview.org", type = Integer.class)
+    protected List<Integer> hiddenSequences;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.JSeq.RnaViewer> rnaViewer;
+
+    @XmlAttribute(name = "colour")
+    protected Integer colour;
+
+    @XmlAttribute(name = "start", required = true)
+    protected int start;
+
+    @XmlAttribute(name = "end", required = true)
+    protected int end;
+
+    @XmlAttribute(name = "id", required = true)
+    protected String id;
+
+    @XmlAttribute(name = "hidden")
+    protected Boolean hidden;
+
+    @XmlAttribute(name = "viewreference")
+    protected Boolean viewreference;
+
+    /**
+     * Gets the value of the features property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the features property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getFeatures().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list {@link Feature }
+     * 
+     * 
+     */
+    public List<Object/*Feature*/> getFeatures()
+    {
+      if (features == null)
+      {
+        features = new ArrayList<Object/*Feature*/>();
+      }
+      return this.features;
+    }
+
+    /**
+     * Gets the value of the pdbids property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the pdbids property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getPdbids().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.JSeq.Pdbids }
+     * 
+     * 
+     */
+    public List<JalviewModel.JSeq.Pdbids> getPdbids()
+    {
+      if (pdbids == null)
+      {
+        pdbids = new ArrayList<JalviewModel.JSeq.Pdbids>();
+      }
+      return this.pdbids;
+    }
+
+    /**
+     * Gets the value of the hiddenSequences property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the hiddenSequences property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getHiddenSequences().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list {@link Integer }
+     * 
+     * 
+     */
+    public List<Integer> getHiddenSequences()
+    {
+      if (hiddenSequences == null)
+      {
+        hiddenSequences = new ArrayList<Integer>();
+      }
+      return this.hiddenSequences;
+    }
+
+    /**
+     * Gets the value of the rnaViewer property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the rnaViewer property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getRnaViewer().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.JSeq.RnaViewer }
+     * 
+     * 
+     */
+    public List<JalviewModel.JSeq.RnaViewer> getRnaViewer()
+    {
+      if (rnaViewer == null)
+      {
+        rnaViewer = new ArrayList<JalviewModel.JSeq.RnaViewer>();
+      }
+      return this.rnaViewer;
+    }
+
+    /**
+     * Gets the value of the colour property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getColour()
+    {
+      return colour;
+    }
+
+    /**
+     * Sets the value of the colour property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setColour(Integer value)
+    {
+      this.colour = value;
+    }
+
+    /**
+     * Gets the value of the start property.
+     * 
+     */
+    public int getStart()
+    {
+      return start;
+    }
+
+    /**
+     * Sets the value of the start property.
+     * 
+     */
+    public void setStart(int value)
+    {
+      this.start = value;
+    }
+
+    /**
+     * Gets the value of the end property.
+     * 
+     */
+    public int getEnd()
+    {
+      return end;
+    }
+
+    /**
+     * Sets the value of the end property.
+     * 
+     */
+    public void setEnd(int value)
+    {
+      this.end = value;
+    }
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getId()
+    {
+      return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setId(String value)
+    {
+      this.id = value;
+    }
+
+    /**
+     * Gets the value of the hidden property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isHidden()
+    {
+      return hidden;
+    }
+
+    /**
+     * Sets the value of the hidden property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setHidden(Boolean value)
+    {
+      this.hidden = value;
+    }
+
+    /**
+     * Gets the value of the viewreference property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isViewreference()
+    {
+      return viewreference;
+    }
+
+    /**
+     * Sets the value of the viewreference property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setViewreference(Boolean value)
+    {
+      this.viewreference = value;
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;extension base="{www.jalview.org}pdbentry">
+     *       &lt;sequence>
+     *         &lt;element name="structureState" maxOccurs="unbounded" minOccurs="0">
+     *           &lt;complexType>
+     *             &lt;simpleContent>
+     *               &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+     *                 &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+     *                 &lt;attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *                 &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *                 &lt;attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+     *                 &lt;attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+     *                 &lt;attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+     *                 &lt;attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *               &lt;/extension>
+     *             &lt;/simpleContent>
+     *           &lt;/complexType>
+     *         &lt;/element>
+     *       &lt;/sequence>
+     *     &lt;/extension>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "", propOrder = { "structureState" })
+    public static class Pdbids //extends Pdbentry
+    {
+
+      @XmlElement(namespace = "www.jalview.org")
+      protected List<JalviewModel.JSeq.Pdbids.StructureState> structureState;
+
+      /**
+       * Gets the value of the structureState property.
+       * 
+       * <p>
+       * This accessor method returns a reference to the live list, not a
+       * snapshot. Therefore any modification you make to the returned list will
+       * be present inside the JAXB object. This is why there is not a
+       * <CODE>set</CODE> method for the structureState property.
+       * 
+       * <p>
+       * For example, to add a new item, do as follows:
+       * 
+       * <pre>
+       * getStructureState().add(newItem);
+       * </pre>
+       * 
+       * 
+       * <p>
+       * Objects of the following type(s) are allowed in the list
+       * {@link JalviewModel.JSeq.Pdbids.StructureState }
+       * 
+       * 
+       */
+      public List<JalviewModel.JSeq.Pdbids.StructureState> getStructureState()
+      {
+        if (structureState == null)
+        {
+          structureState = new ArrayList<JalviewModel.JSeq.Pdbids.StructureState>();
+        }
+        return this.structureState;
+      }
+
+      /**
+       * <p>
+       * Java class for anonymous complex type.
+       * 
+       * <p>
+       * The following schema fragment specifies the expected content contained
+       * within this class.
+       * 
+       * <pre>
+       * &lt;complexType>
+       *   &lt;simpleContent>
+       *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+       *       &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+       *       &lt;attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+       *       &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+       *       &lt;attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+       *       &lt;attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+       *       &lt;attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+       *       &lt;attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
+       *     &lt;/extension>
+       *   &lt;/simpleContent>
+       * &lt;/complexType>
+       * </pre>
+       * 
+       * 
+       */
+      @XmlAccessorType(XmlAccessType.FIELD)
+      @XmlType(name = "", propOrder = { "value" })
+      public static class StructureState
+      {
+
+        @XmlValue
+        protected String value;
+
+        @XmlAttribute(name = "visible")
+        protected Boolean visible;
+
+        @XmlAttribute(name = "viewId")
+        protected String viewId;
+
+        @XmlAttribute(name = "alignwithAlignPanel")
+        protected Boolean alignwithAlignPanel;
+
+        @XmlAttribute(name = "colourwithAlignPanel")
+        protected Boolean colourwithAlignPanel;
+
+        @XmlAttribute(name = "colourByJmol")
+        protected Boolean colourByJmol;
+
+        @XmlAttribute(name = "type")
+        protected String type;
+
+        @XmlAttribute(name = "width")
+        protected Integer width;
+
+        @XmlAttribute(name = "height")
+        protected Integer height;
+
+        @XmlAttribute(name = "xpos")
+        protected Integer xpos;
+
+        @XmlAttribute(name = "ypos")
+        protected Integer ypos;
+
+        /**
+         * Gets the value of the value property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getValue()
+        {
+          return value;
+        }
+
+        /**
+         * Sets the value of the value property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setValue(String value)
+        {
+          this.value = value;
+        }
+
+        /**
+         * Gets the value of the visible property.
+         * 
+         * @return possible object is {@link Boolean }
+         * 
+         */
+        public Boolean isVisible()
+        {
+          return visible;
+        }
+
+        /**
+         * Sets the value of the visible property.
+         * 
+         * @param value
+         *          allowed object is {@link Boolean }
+         * 
+         */
+        public void setVisible(Boolean value)
+        {
+          this.visible = value;
+        }
+
+        /**
+         * Gets the value of the viewId property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getViewId()
+        {
+          return viewId;
+        }
+
+        /**
+         * Sets the value of the viewId property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setViewId(String value)
+        {
+          this.viewId = value;
+        }
+
+        /**
+         * Gets the value of the alignwithAlignPanel property.
+         * 
+         * @return possible object is {@link Boolean }
+         * 
+         */
+        public boolean isAlignwithAlignPanel()
+        {
+          if (alignwithAlignPanel == null)
+          {
+            return true;
+          }
+          else
+          {
+            return alignwithAlignPanel;
+          }
+        }
+
+        /**
+         * Sets the value of the alignwithAlignPanel property.
+         * 
+         * @param value
+         *          allowed object is {@link Boolean }
+         * 
+         */
+        public void setAlignwithAlignPanel(Boolean value)
+        {
+          this.alignwithAlignPanel = value;
+        }
+
+        /**
+         * Gets the value of the colourwithAlignPanel property.
+         * 
+         * @return possible object is {@link Boolean }
+         * 
+         */
+        public boolean isColourwithAlignPanel()
+        {
+          if (colourwithAlignPanel == null)
+          {
+            return false;
+          }
+          else
+          {
+            return colourwithAlignPanel;
+          }
+        }
+
+        /**
+         * Sets the value of the colourwithAlignPanel property.
+         * 
+         * @param value
+         *          allowed object is {@link Boolean }
+         * 
+         */
+        public void setColourwithAlignPanel(Boolean value)
+        {
+          this.colourwithAlignPanel = value;
+        }
+
+        /**
+         * Gets the value of the colourByJmol property.
+         * 
+         * @return possible object is {@link Boolean }
+         * 
+         */
+        public boolean isColourByJmol()
+        {
+          if (colourByJmol == null)
+          {
+            return true;
+          }
+          else
+          {
+            return colourByJmol;
+          }
+        }
+
+        /**
+         * Sets the value of the colourByJmol property.
+         * 
+         * @param value
+         *          allowed object is {@link Boolean }
+         * 
+         */
+        public void setColourByJmol(Boolean value)
+        {
+          this.colourByJmol = value;
+        }
+
+        /**
+         * Gets the value of the type property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getType()
+        {
+          return type;
+        }
+
+        /**
+         * Sets the value of the type property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setType(String value)
+        {
+          this.type = value;
+        }
+
+        /**
+         * Gets the value of the width property.
+         * 
+         * @return possible object is {@link Integer }
+         * 
+         */
+        public Integer getWidth()
+        {
+          return width;
+        }
+
+        /**
+         * Sets the value of the width property.
+         * 
+         * @param value
+         *          allowed object is {@link Integer }
+         * 
+         */
+        public void setWidth(Integer value)
+        {
+          this.width = value;
+        }
+
+        /**
+         * Gets the value of the height property.
+         * 
+         * @return possible object is {@link Integer }
+         * 
+         */
+        public Integer getHeight()
+        {
+          return height;
+        }
+
+        /**
+         * Sets the value of the height property.
+         * 
+         * @param value
+         *          allowed object is {@link Integer }
+         * 
+         */
+        public void setHeight(Integer value)
+        {
+          this.height = value;
+        }
+
+        /**
+         * Gets the value of the xpos property.
+         * 
+         * @return possible object is {@link Integer }
+         * 
+         */
+        public Integer getXpos()
+        {
+          return xpos;
+        }
+
+        /**
+         * Sets the value of the xpos property.
+         * 
+         * @param value
+         *          allowed object is {@link Integer }
+         * 
+         */
+        public void setXpos(Integer value)
+        {
+          this.xpos = value;
+        }
+
+        /**
+         * Gets the value of the ypos property.
+         * 
+         * @return possible object is {@link Integer }
+         * 
+         */
+        public Integer getYpos()
+        {
+          return ypos;
+        }
+
+        /**
+         * Sets the value of the ypos property.
+         * 
+         * @param value
+         *          allowed object is {@link Integer }
+         * 
+         */
+        public void setYpos(Integer value)
+        {
+          this.ypos = value;
+        }
+
+      }
+
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       &lt;sequence>
+     *         &lt;element name="secondaryStructure" maxOccurs="unbounded">
+     *           &lt;complexType>
+     *             &lt;complexContent>
+     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *                 &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *                 &lt;attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *                 &lt;attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *                 &lt;attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *               &lt;/restriction>
+     *             &lt;/complexContent>
+     *           &lt;/complexType>
+     *         &lt;/element>
+     *       &lt;/sequence>
+     *       &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+     *       &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *       &lt;attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *     &lt;/restriction>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "", propOrder = { "secondaryStructure" })
+    public static class RnaViewer
+    {
+
+      @XmlElement(namespace = "www.jalview.org", required = true)
+      protected List<JalviewModel.JSeq.RnaViewer.SecondaryStructure> secondaryStructure;
+
+      @XmlAttribute(name = "title")
+      protected String title;
+
+      @XmlAttribute(name = "viewId")
+      protected String viewId;
+
+      @XmlAttribute(name = "dividerLocation")
+      protected Integer dividerLocation;
+
+      @XmlAttribute(name = "selectedRna")
+      protected Integer selectedRna;
+
+      @XmlAttribute(name = "width")
+      protected Integer width;
+
+      @XmlAttribute(name = "height")
+      protected Integer height;
+
+      @XmlAttribute(name = "xpos")
+      protected Integer xpos;
+
+      @XmlAttribute(name = "ypos")
+      protected Integer ypos;
+
+      /**
+       * Gets the value of the secondaryStructure property.
+       * 
+       * <p>
+       * This accessor method returns a reference to the live list, not a
+       * snapshot. Therefore any modification you make to the returned list will
+       * be present inside the JAXB object. This is why there is not a
+       * <CODE>set</CODE> method for the secondaryStructure property.
+       * 
+       * <p>
+       * For example, to add a new item, do as follows:
+       * 
+       * <pre>
+       * getSecondaryStructure().add(newItem);
+       * </pre>
+       * 
+       * 
+       * <p>
+       * Objects of the following type(s) are allowed in the list
+       * {@link JalviewModel.JSeq.RnaViewer.SecondaryStructure }
+       * 
+       * 
+       */
+      public List<JalviewModel.JSeq.RnaViewer.SecondaryStructure> getSecondaryStructure()
+      {
+        if (secondaryStructure == null)
+        {
+          secondaryStructure = new ArrayList<JalviewModel.JSeq.RnaViewer.SecondaryStructure>();
+        }
+        return this.secondaryStructure;
+      }
+
+      /**
+       * Gets the value of the title property.
+       * 
+       * @return possible object is {@link String }
+       * 
+       */
+      public String getTitle()
+      {
+        return title;
+      }
+
+      /**
+       * Sets the value of the title property.
+       * 
+       * @param value
+       *          allowed object is {@link String }
+       * 
+       */
+      public void setTitle(String value)
+      {
+        this.title = value;
+      }
+
+      /**
+       * Gets the value of the viewId property.
+       * 
+       * @return possible object is {@link String }
+       * 
+       */
+      public String getViewId()
+      {
+        return viewId;
+      }
+
+      /**
+       * Sets the value of the viewId property.
+       * 
+       * @param value
+       *          allowed object is {@link String }
+       * 
+       */
+      public void setViewId(String value)
+      {
+        this.viewId = value;
+      }
+
+      /**
+       * Gets the value of the dividerLocation property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getDividerLocation()
+      {
+        return dividerLocation;
+      }
+
+      /**
+       * Sets the value of the dividerLocation property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setDividerLocation(Integer value)
+      {
+        this.dividerLocation = value;
+      }
+
+      /**
+       * Gets the value of the selectedRna property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getSelectedRna()
+      {
+        return selectedRna;
+      }
+
+      /**
+       * Sets the value of the selectedRna property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setSelectedRna(Integer value)
+      {
+        this.selectedRna = value;
+      }
+
+      /**
+       * Gets the value of the width property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getWidth()
+      {
+        return width;
+      }
+
+      /**
+       * Sets the value of the width property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setWidth(Integer value)
+      {
+        this.width = value;
+      }
+
+      /**
+       * Gets the value of the height property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getHeight()
+      {
+        return height;
+      }
+
+      /**
+       * Sets the value of the height property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setHeight(Integer value)
+      {
+        this.height = value;
+      }
+
+      /**
+       * Gets the value of the xpos property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getXpos()
+      {
+        return xpos;
+      }
+
+      /**
+       * Sets the value of the xpos property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setXpos(Integer value)
+      {
+        this.xpos = value;
+      }
+
+      /**
+       * Gets the value of the ypos property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getYpos()
+      {
+        return ypos;
+      }
+
+      /**
+       * Sets the value of the ypos property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setYpos(Integer value)
+      {
+        this.ypos = value;
+      }
+
+      /**
+       * <p>
+       * Java class for anonymous complex type.
+       * 
+       * <p>
+       * The following schema fragment specifies the expected content contained
+       * within this class.
+       * 
+       * <pre>
+       * &lt;complexType>
+       *   &lt;complexContent>
+       *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+       *       &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+       *       &lt;attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+       *       &lt;attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+       *       &lt;attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
+       *     &lt;/restriction>
+       *   &lt;/complexContent>
+       * &lt;/complexType>
+       * </pre>
+       * 
+       * 
+       */
+      @XmlAccessorType(XmlAccessType.FIELD)
+      @XmlType(name = "")
+      public static class SecondaryStructure
+      {
+
+        @XmlAttribute(name = "title")
+        protected String title;
+
+        @XmlAttribute(name = "annotationId", required = true)
+        protected String annotationId;
+
+        @XmlAttribute(name = "gapped")
+        protected Boolean gapped;
+
+        @XmlAttribute(name = "viewerState")
+        protected String viewerState;
+
+        /**
+         * Gets the value of the title property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getTitle()
+        {
+          return title;
+        }
+
+        /**
+         * Sets the value of the title property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setTitle(String value)
+        {
+          this.title = value;
+        }
+
+        /**
+         * Gets the value of the annotationId property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getAnnotationId()
+        {
+          return annotationId;
+        }
+
+        /**
+         * Sets the value of the annotationId property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setAnnotationId(String value)
+        {
+          this.annotationId = value;
+        }
+
+        /**
+         * Gets the value of the gapped property.
+         * 
+         * @return possible object is {@link Boolean }
+         * 
+         */
+        public Boolean isGapped()
+        {
+          return gapped;
+        }
+
+        /**
+         * Sets the value of the gapped property.
+         * 
+         * @param value
+         *          allowed object is {@link Boolean }
+         * 
+         */
+        public void setGapped(Boolean value)
+        {
+          this.gapped = value;
+        }
+
+        /**
+         * Gets the value of the viewerState property.
+         * 
+         * @return possible object is {@link String }
+         * 
+         */
+        public String getViewerState()
+        {
+          return viewerState;
+        }
+
+        /**
+         * Sets the value of the viewerState property.
+         * 
+         * @param value
+         *          allowed object is {@link String }
+         * 
+         */
+        public void setViewerState(String value)
+        {
+          this.viewerState = value;
+        }
+
+      }
+
+    }
+
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence minOccurs="0">
+   *         &lt;element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
+   *         &lt;element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
+   *       &lt;/sequence>
+   *       &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+   *       &lt;attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+   *       &lt;attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(name = "", propOrder = { "title", "newick" })
+  public static class Tree
+  {
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected String title;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected String newick;
+
+    @XmlAttribute(name = "fontName")
+    protected String fontName;
+
+    @XmlAttribute(name = "fontSize")
+    protected Integer fontSize;
+
+    @XmlAttribute(name = "fontStyle")
+    protected Integer fontStyle;
+
+    @XmlAttribute(name = "threshold")
+    protected Float threshold;
+
+    @XmlAttribute(name = "showBootstrap")
+    protected Boolean showBootstrap;
+
+    @XmlAttribute(name = "showDistances")
+    protected Boolean showDistances;
+
+    @XmlAttribute(name = "markUnlinked")
+    protected Boolean markUnlinked;
+
+    @XmlAttribute(name = "fitToWindow")
+    protected Boolean fitToWindow;
+
+    @XmlAttribute(name = "currentTree")
+    protected Boolean currentTree;
+
+    @XmlAttribute(name = "id")
+    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+    @XmlID
+    @XmlSchemaType(name = "ID")
+    protected String id;
+
+    @XmlAttribute(name = "width")
+    protected Integer width;
+
+    @XmlAttribute(name = "height")
+    protected Integer height;
+
+    @XmlAttribute(name = "xpos")
+    protected Integer xpos;
+
+    @XmlAttribute(name = "ypos")
+    protected Integer ypos;
+
+    /**
+     * Gets the value of the title property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getTitle()
+    {
+      return title;
+    }
+
+    /**
+     * Sets the value of the title property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setTitle(String value)
+    {
+      this.title = value;
+    }
+
+    /**
+     * Gets the value of the newick property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getNewick()
+    {
+      return newick;
+    }
+
+    /**
+     * Sets the value of the newick property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setNewick(String value)
+    {
+      this.newick = value;
+    }
+
+    /**
+     * Gets the value of the fontName property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getFontName()
+    {
+      return fontName;
+    }
+
+    /**
+     * Sets the value of the fontName property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setFontName(String value)
+    {
+      this.fontName = value;
+    }
+
+    /**
+     * Gets the value of the fontSize property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getFontSize()
+    {
+      return fontSize;
+    }
+
+    /**
+     * Sets the value of the fontSize property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setFontSize(Integer value)
+    {
+      this.fontSize = value;
+    }
+
+    /**
+     * Gets the value of the fontStyle property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getFontStyle()
+    {
+      return fontStyle;
+    }
+
+    /**
+     * Sets the value of the fontStyle property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setFontStyle(Integer value)
+    {
+      this.fontStyle = value;
+    }
+
+    /**
+     * Gets the value of the threshold property.
+     * 
+     * @return possible object is {@link Float }
+     * 
+     */
+    public Float getThreshold()
+    {
+      return threshold;
+    }
+
+    /**
+     * Sets the value of the threshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Float }
+     * 
+     */
+    public void setThreshold(Float value)
+    {
+      this.threshold = value;
+    }
+
+    /**
+     * Gets the value of the showBootstrap property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowBootstrap()
+    {
+      return showBootstrap;
+    }
+
+    /**
+     * Sets the value of the showBootstrap property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowBootstrap(Boolean value)
+    {
+      this.showBootstrap = value;
+    }
+
+    /**
+     * Gets the value of the showDistances property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowDistances()
+    {
+      return showDistances;
+    }
+
+    /**
+     * Sets the value of the showDistances property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowDistances(Boolean value)
+    {
+      this.showDistances = value;
+    }
+
+    /**
+     * Gets the value of the markUnlinked property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isMarkUnlinked()
+    {
+      return markUnlinked;
+    }
+
+    /**
+     * Sets the value of the markUnlinked property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setMarkUnlinked(Boolean value)
+    {
+      this.markUnlinked = value;
+    }
+
+    /**
+     * Gets the value of the fitToWindow property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isFitToWindow()
+    {
+      return fitToWindow;
+    }
+
+    /**
+     * Sets the value of the fitToWindow property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setFitToWindow(Boolean value)
+    {
+      this.fitToWindow = value;
+    }
+
+    /**
+     * Gets the value of the currentTree property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isCurrentTree()
+    {
+      return currentTree;
+    }
+
+    /**
+     * Sets the value of the currentTree property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setCurrentTree(Boolean value)
+    {
+      this.currentTree = value;
+    }
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getId()
+    {
+      return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setId(String value)
+    {
+      this.id = value;
+    }
+
+    /**
+     * Gets the value of the width property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getWidth()
+    {
+      return width;
+    }
+
+    /**
+     * Sets the value of the width property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setWidth(Integer value)
+    {
+      this.width = value;
+    }
+
+    /**
+     * Gets the value of the height property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getHeight()
+    {
+      return height;
+    }
+
+    /**
+     * Sets the value of the height property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setHeight(Integer value)
+    {
+      this.height = value;
+    }
+
+    /**
+     * Gets the value of the xpos property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getXpos()
+    {
+      return xpos;
+    }
+
+    /**
+     * Sets the value of the xpos property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setXpos(Integer value)
+    {
+      this.xpos = value;
+    }
+
+    /**
+     * Gets the value of the ypos property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getYpos()
+    {
+      return ypos;
+    }
+
+    /**
+     * Sets the value of the ypos property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setYpos(Integer value)
+    {
+      this.ypos = value;
+    }
+
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence>
+   *         &lt;element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
+   *       &lt;/sequence>
+   *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(name = "", propOrder = { "userColourScheme" })
+  public static class UserColours
+  {
+
+    @XmlElement(
+      name = "UserColourScheme",
+      namespace = "www.jalview.org",
+      required = true)
+    protected Object/*JalviewUserColours*/ userColourScheme;
+
+    @XmlAttribute(name = "id")
+    protected String id;
+
+    /**
+     * Gets the value of the userColourScheme property.
+     * 
+     * @return possible object is {@link JalviewUserColours }
+     * 
+     */
+    public Object/*JalviewUserColours*/ getUserColourScheme()
+    {
+      return userColourScheme;
+    }
+
+    /**
+     * Sets the value of the userColourScheme property.
+     * 
+     * @param value
+     *          allowed object is {@link JalviewUserColours }
+     * 
+     */
+    public void setUserColourScheme(Object/*JalviewUserColours*/ value)
+    {
+      this.userColourScheme = value;
+    }
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getId()
+    {
+      return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setId(String value)
+    {
+      this.id = value;
+    }
+
+  }
+
+  /**
+   * <p>
+   * Java class for anonymous complex type.
+   * 
+   * <p>
+   * The following schema fragment specifies the expected content contained
+   * within this class.
+   * 
+   * <pre>
+   * &lt;complexType>
+   *   &lt;complexContent>
+   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *       &lt;sequence>
+   *         &lt;element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
+   *         &lt;element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+   *                 &lt;attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *                 &lt;attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *               &lt;/restriction>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *         &lt;element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
+   *           &lt;complexType>
+   *             &lt;complexContent>
+   *               &lt;extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
+   *                 &lt;attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *                 &lt;attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *                 &lt;attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *               &lt;/extension>
+   *             &lt;/complexContent>
+   *           &lt;/complexType>
+   *         &lt;/element>
+   *       &lt;/sequence>
+   *       &lt;attGroup ref="{www.jalview.org}swingwindow"/>
+   *       &lt;attribute name="conservationSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="pidSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+   *       &lt;attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+   *       &lt;attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *       &lt;attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+   *       &lt;attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
+   *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+   *       &lt;attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
+   *     &lt;/restriction>
+   *   &lt;/complexContent>
+   * &lt;/complexType>
+   * </pre>
+   * 
+   * 
+   */
+  @XmlAccessorType(XmlAccessType.FIELD)
+  @XmlType(
+    name = "",
+    propOrder =
+    { "annotationColours", "hiddenColumns", "calcIdParam" })
+  public static class Viewport
+  {
+
+    @XmlElement(name = "AnnotationColours", namespace = "www.jalview.org")
+    protected AnnotationColourScheme annotationColours;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.Viewport.HiddenColumns> hiddenColumns;
+
+    @XmlElement(namespace = "www.jalview.org")
+    protected List<JalviewModel.Viewport.CalcIdParam> calcIdParam;
+
+    @XmlAttribute(name = "conservationSelected")
+    protected Boolean conservationSelected;
+
+    @XmlAttribute(name = "pidSelected")
+    protected Boolean pidSelected;
+
+    @XmlAttribute(name = "bgColour")
+    protected String bgColour;
+
+    @XmlAttribute(name = "consThreshold")
+    protected Integer consThreshold;
+
+    @XmlAttribute(name = "pidThreshold")
+    protected Integer pidThreshold;
+
+    @XmlAttribute(name = "title")
+    protected String title;
+
+    @XmlAttribute(name = "showFullId")
+    protected Boolean showFullId;
+
+    @XmlAttribute(name = "rightAlignIds")
+    protected Boolean rightAlignIds;
+
+    @XmlAttribute(name = "showText")
+    protected Boolean showText;
+
+    @XmlAttribute(name = "showColourText")
+    protected Boolean showColourText;
+
+    @XmlAttribute(name = "showUnconserved")
+    protected Boolean showUnconserved;
+
+    @XmlAttribute(name = "showBoxes")
+    protected Boolean showBoxes;
+
+    @XmlAttribute(name = "wrapAlignment")
+    protected Boolean wrapAlignment;
+
+    @XmlAttribute(name = "renderGaps")
+    protected Boolean renderGaps;
+
+    @XmlAttribute(name = "showSequenceFeatures")
+    protected Boolean showSequenceFeatures;
+
+    @XmlAttribute(name = "showNPfeatureTooltip")
+    protected Boolean showNPfeatureTooltip;
+
+    @XmlAttribute(name = "showDbRefTooltip")
+    protected Boolean showDbRefTooltip;
+
+    @XmlAttribute(name = "followHighlight")
+    protected Boolean followHighlight;
+
+    @XmlAttribute(name = "followSelection")
+    protected Boolean followSelection;
+
+    @XmlAttribute(name = "showAnnotation")
+    protected Boolean showAnnotation;
+
+    @XmlAttribute(name = "centreColumnLabels")
+    protected Boolean centreColumnLabels;
+
+    @XmlAttribute(name = "showGroupConservation")
+    protected Boolean showGroupConservation;
+
+    @XmlAttribute(name = "showGroupConsensus")
+    protected Boolean showGroupConsensus;
+
+    @XmlAttribute(name = "showConsensusHistogram")
+    protected Boolean showConsensusHistogram;
+
+    @XmlAttribute(name = "showSequenceLogo")
+    protected Boolean showSequenceLogo;
+
+    @XmlAttribute(name = "normaliseSequenceLogo")
+    protected Boolean normaliseSequenceLogo;
+
+    @XmlAttribute(name = "ignoreGapsinConsensus")
+    protected Boolean ignoreGapsinConsensus;
+
+    @XmlAttribute(name = "startRes")
+    protected Integer startRes;
+
+    @XmlAttribute(name = "startSeq")
+    protected Integer startSeq;
+
+    @XmlAttribute(name = "fontName")
+    protected String fontName;
+
+    @XmlAttribute(name = "fontSize")
+    protected Integer fontSize;
+
+    @XmlAttribute(name = "fontStyle")
+    protected Integer fontStyle;
+
+    @XmlAttribute(name = "scaleProteinAsCdna")
+    protected Boolean scaleProteinAsCdna;
+
+    @XmlAttribute(name = "viewName")
+    protected String viewName;
+
+    @XmlAttribute(name = "sequenceSetId")
+    protected String sequenceSetId;
+
+    @XmlAttribute(name = "gatheredViews")
+    protected Boolean gatheredViews;
+
+    @XmlAttribute(name = "textCol1")
+    protected Integer textCol1;
+
+    @XmlAttribute(name = "textCol2")
+    protected Integer textCol2;
+
+    @XmlAttribute(name = "textColThreshold")
+    protected Integer textColThreshold;
+
+    @XmlAttribute(name = "id")
+    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+    @XmlID
+    @XmlSchemaType(name = "ID")
+    protected String id;
+
+    @XmlAttribute(name = "complementId")
+    protected String complementId;
+
+    @XmlAttribute(name = "width")
+    protected Integer width;
+
+    @XmlAttribute(name = "height")
+    protected Integer height;
+
+    @XmlAttribute(name = "xpos")
+    protected Integer xpos;
+
+    @XmlAttribute(name = "ypos")
+    protected Integer ypos;
+
+    /**
+     * Gets the value of the annotationColours property.
+     * 
+     * @return possible object is {@link AnnotationColourScheme }
+     * 
+     */
+    public AnnotationColourScheme getAnnotationColours()
+    {
+      return annotationColours;
+    }
+
+    /**
+     * Sets the value of the annotationColours property.
+     * 
+     * @param value
+     *          allowed object is {@link AnnotationColourScheme }
+     * 
+     */
+    public void setAnnotationColours(AnnotationColourScheme value)
+    {
+      this.annotationColours = value;
+    }
+
+    /**
+     * Gets the value of the hiddenColumns property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the hiddenColumns property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getHiddenColumns().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.Viewport.HiddenColumns }
+     * 
+     * 
+     */
+    public List<JalviewModel.Viewport.HiddenColumns> getHiddenColumns()
+    {
+      if (hiddenColumns == null)
+      {
+        hiddenColumns = new ArrayList<JalviewModel.Viewport.HiddenColumns>();
+      }
+      return this.hiddenColumns;
+    }
+
+    /**
+     * Gets the value of the calcIdParam property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list, not a
+     * snapshot. Therefore any modification you make to the returned list will
+     * be present inside the JAXB object. This is why there is not a
+     * <CODE>set</CODE> method for the calcIdParam property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * 
+     * <pre>
+     * getCalcIdParam().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link JalviewModel.Viewport.CalcIdParam }
+     * 
+     * 
+     */
+    public List<JalviewModel.Viewport.CalcIdParam> getCalcIdParam()
+    {
+      if (calcIdParam == null)
+      {
+        calcIdParam = new ArrayList<JalviewModel.Viewport.CalcIdParam>();
+      }
+      return this.calcIdParam;
+    }
+
+    /**
+     * Gets the value of the conservationSelected property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isConservationSelected()
+    {
+      return conservationSelected;
+    }
+
+    /**
+     * Sets the value of the conservationSelected property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setConservationSelected(Boolean value)
+    {
+      this.conservationSelected = value;
+    }
+
+    /**
+     * Gets the value of the pidSelected property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isPidSelected()
+    {
+      return pidSelected;
+    }
+
+    /**
+     * Sets the value of the pidSelected property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setPidSelected(Boolean value)
+    {
+      this.pidSelected = value;
+    }
+
+    /**
+     * Gets the value of the bgColour property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getBgColour()
+    {
+      return bgColour;
+    }
+
+    /**
+     * Sets the value of the bgColour property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setBgColour(String value)
+    {
+      this.bgColour = value;
+    }
+
+    /**
+     * Gets the value of the consThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getConsThreshold()
+    {
+      return consThreshold;
+    }
+
+    /**
+     * Sets the value of the consThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setConsThreshold(Integer value)
+    {
+      this.consThreshold = value;
+    }
+
+    /**
+     * Gets the value of the pidThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getPidThreshold()
+    {
+      return pidThreshold;
+    }
+
+    /**
+     * Sets the value of the pidThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setPidThreshold(Integer value)
+    {
+      this.pidThreshold = value;
+    }
+
+    /**
+     * Gets the value of the title property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getTitle()
+    {
+      return title;
+    }
+
+    /**
+     * Sets the value of the title property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setTitle(String value)
+    {
+      this.title = value;
+    }
+
+    /**
+     * Gets the value of the showFullId property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowFullId()
+    {
+      return showFullId;
+    }
+
+    /**
+     * Sets the value of the showFullId property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowFullId(Boolean value)
+    {
+      this.showFullId = value;
+    }
+
+    /**
+     * Gets the value of the rightAlignIds property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isRightAlignIds()
+    {
+      return rightAlignIds;
+    }
+
+    /**
+     * Sets the value of the rightAlignIds property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setRightAlignIds(Boolean value)
+    {
+      this.rightAlignIds = value;
+    }
+
+    /**
+     * Gets the value of the showText property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowText()
+    {
+      return showText;
+    }
+
+    /**
+     * Sets the value of the showText property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowText(Boolean value)
+    {
+      this.showText = value;
+    }
+
+    /**
+     * Gets the value of the showColourText property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowColourText()
+    {
+      return showColourText;
+    }
+
+    /**
+     * Sets the value of the showColourText property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowColourText(Boolean value)
+    {
+      this.showColourText = value;
+    }
+
+    /**
+     * Gets the value of the showUnconserved property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowUnconserved()
+    {
+      if (showUnconserved == null)
+      {
+        return false;
+      }
+      else
+      {
+        return showUnconserved;
+      }
+    }
+
+    /**
+     * Sets the value of the showUnconserved property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowUnconserved(Boolean value)
+    {
+      this.showUnconserved = value;
+    }
+
+    /**
+     * Gets the value of the showBoxes property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowBoxes()
+    {
+      return showBoxes;
+    }
+
+    /**
+     * Sets the value of the showBoxes property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowBoxes(Boolean value)
+    {
+      this.showBoxes = value;
+    }
+
+    /**
+     * Gets the value of the wrapAlignment property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isWrapAlignment()
+    {
+      return wrapAlignment;
+    }
+
+    /**
+     * Sets the value of the wrapAlignment property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setWrapAlignment(Boolean value)
+    {
+      this.wrapAlignment = value;
+    }
+
+    /**
+     * Gets the value of the renderGaps property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isRenderGaps()
+    {
+      return renderGaps;
+    }
+
+    /**
+     * Sets the value of the renderGaps property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setRenderGaps(Boolean value)
+    {
+      this.renderGaps = value;
+    }
+
+    /**
+     * Gets the value of the showSequenceFeatures property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowSequenceFeatures()
+    {
+      return showSequenceFeatures;
+    }
+
+    /**
+     * Sets the value of the showSequenceFeatures property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowSequenceFeatures(Boolean value)
+    {
+      this.showSequenceFeatures = value;
+    }
+
+    /**
+     * Gets the value of the showNPfeatureTooltip property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowNPfeatureTooltip()
+    {
+      return showNPfeatureTooltip;
+    }
+
+    /**
+     * Sets the value of the showNPfeatureTooltip property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowNPfeatureTooltip(Boolean value)
+    {
+      this.showNPfeatureTooltip = value;
+    }
+
+    /**
+     * Gets the value of the showDbRefTooltip property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowDbRefTooltip()
+    {
+      return showDbRefTooltip;
+    }
+
+    /**
+     * Sets the value of the showDbRefTooltip property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowDbRefTooltip(Boolean value)
+    {
+      this.showDbRefTooltip = value;
+    }
+
+    /**
+     * Gets the value of the followHighlight property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isFollowHighlight()
+    {
+      if (followHighlight == null)
+      {
+        return true;
+      }
+      else
+      {
+        return followHighlight;
+      }
+    }
+
+    /**
+     * Sets the value of the followHighlight property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setFollowHighlight(Boolean value)
+    {
+      this.followHighlight = value;
+    }
+
+    /**
+     * Gets the value of the followSelection property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isFollowSelection()
+    {
+      if (followSelection == null)
+      {
+        return true;
+      }
+      else
+      {
+        return followSelection;
+      }
+    }
+
+    /**
+     * Sets the value of the followSelection property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setFollowSelection(Boolean value)
+    {
+      this.followSelection = value;
+    }
+
+    /**
+     * Gets the value of the showAnnotation property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isShowAnnotation()
+    {
+      return showAnnotation;
+    }
+
+    /**
+     * Sets the value of the showAnnotation property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowAnnotation(Boolean value)
+    {
+      this.showAnnotation = value;
+    }
+
+    /**
+     * Gets the value of the centreColumnLabels property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isCentreColumnLabels()
+    {
+      if (centreColumnLabels == null)
+      {
+        return false;
+      }
+      else
+      {
+        return centreColumnLabels;
+      }
+    }
+
+    /**
+     * Sets the value of the centreColumnLabels property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setCentreColumnLabels(Boolean value)
+    {
+      this.centreColumnLabels = value;
+    }
+
+    /**
+     * Gets the value of the showGroupConservation property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowGroupConservation()
+    {
+      if (showGroupConservation == null)
+      {
+        return false;
+      }
+      else
+      {
+        return showGroupConservation;
+      }
+    }
+
+    /**
+     * Sets the value of the showGroupConservation property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowGroupConservation(Boolean value)
+    {
+      this.showGroupConservation = value;
+    }
+
+    /**
+     * Gets the value of the showGroupConsensus property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowGroupConsensus()
+    {
+      if (showGroupConsensus == null)
+      {
+        return false;
+      }
+      else
+      {
+        return showGroupConsensus;
+      }
+    }
+
+    /**
+     * Sets the value of the showGroupConsensus property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowGroupConsensus(Boolean value)
+    {
+      this.showGroupConsensus = value;
+    }
+
+    /**
+     * Gets the value of the showConsensusHistogram property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowConsensusHistogram()
+    {
+      if (showConsensusHistogram == null)
+      {
+        return true;
+      }
+      else
+      {
+        return showConsensusHistogram;
+      }
+    }
+
+    /**
+     * Sets the value of the showConsensusHistogram property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowConsensusHistogram(Boolean value)
+    {
+      this.showConsensusHistogram = value;
+    }
+
+    /**
+     * Gets the value of the showSequenceLogo property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isShowSequenceLogo()
+    {
+      if (showSequenceLogo == null)
+      {
+        return false;
+      }
+      else
+      {
+        return showSequenceLogo;
+      }
+    }
+
+    /**
+     * Sets the value of the showSequenceLogo property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setShowSequenceLogo(Boolean value)
+    {
+      this.showSequenceLogo = value;
+    }
+
+    /**
+     * Gets the value of the normaliseSequenceLogo property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isNormaliseSequenceLogo()
+    {
+      if (normaliseSequenceLogo == null)
+      {
+        return false;
+      }
+      else
+      {
+        return normaliseSequenceLogo;
+      }
+    }
+
+    /**
+     * Sets the value of the normaliseSequenceLogo property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setNormaliseSequenceLogo(Boolean value)
+    {
+      this.normaliseSequenceLogo = value;
+    }
+
+    /**
+     * Gets the value of the ignoreGapsinConsensus property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isIgnoreGapsinConsensus()
+    {
+      if (ignoreGapsinConsensus == null)
+      {
+        return true;
+      }
+      else
+      {
+        return ignoreGapsinConsensus;
+      }
+    }
+
+    /**
+     * Sets the value of the ignoreGapsinConsensus property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setIgnoreGapsinConsensus(Boolean value)
+    {
+      this.ignoreGapsinConsensus = value;
+    }
+
+    /**
+     * Gets the value of the startRes property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getStartRes()
+    {
+      return startRes;
+    }
+
+    /**
+     * Sets the value of the startRes property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setStartRes(Integer value)
+    {
+      this.startRes = value;
+    }
+
+    /**
+     * Gets the value of the startSeq property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getStartSeq()
+    {
+      return startSeq;
+    }
+
+    /**
+     * Sets the value of the startSeq property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setStartSeq(Integer value)
+    {
+      this.startSeq = value;
+    }
+
+    /**
+     * Gets the value of the fontName property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getFontName()
+    {
+      return fontName;
+    }
+
+    /**
+     * Sets the value of the fontName property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setFontName(String value)
+    {
+      this.fontName = value;
+    }
+
+    /**
+     * Gets the value of the fontSize property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getFontSize()
+    {
+      return fontSize;
+    }
+
+    /**
+     * Sets the value of the fontSize property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setFontSize(Integer value)
+    {
+      this.fontSize = value;
+    }
+
+    /**
+     * Gets the value of the fontStyle property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getFontStyle()
+    {
+      return fontStyle;
+    }
+
+    /**
+     * Sets the value of the fontStyle property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setFontStyle(Integer value)
+    {
+      this.fontStyle = value;
+    }
+
+    /**
+     * Gets the value of the scaleProteinAsCdna property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public boolean isScaleProteinAsCdna()
+    {
+      if (scaleProteinAsCdna == null)
+      {
+        return true;
+      }
+      else
+      {
+        return scaleProteinAsCdna;
+      }
+    }
+
+    /**
+     * Sets the value of the scaleProteinAsCdna property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setScaleProteinAsCdna(Boolean value)
+    {
+      this.scaleProteinAsCdna = value;
+    }
+
+    /**
+     * Gets the value of the viewName property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getViewName()
+    {
+      return viewName;
+    }
+
+    /**
+     * Sets the value of the viewName property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setViewName(String value)
+    {
+      this.viewName = value;
+    }
+
+    /**
+     * Gets the value of the sequenceSetId property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getSequenceSetId()
+    {
+      return sequenceSetId;
+    }
+
+    /**
+     * Sets the value of the sequenceSetId property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setSequenceSetId(String value)
+    {
+      this.sequenceSetId = value;
+    }
+
+    /**
+     * Gets the value of the gatheredViews property.
+     * 
+     * @return possible object is {@link Boolean }
+     * 
+     */
+    public Boolean isGatheredViews()
+    {
+      return gatheredViews;
+    }
+
+    /**
+     * Sets the value of the gatheredViews property.
+     * 
+     * @param value
+     *          allowed object is {@link Boolean }
+     * 
+     */
+    public void setGatheredViews(Boolean value)
+    {
+      this.gatheredViews = value;
+    }
+
+    /**
+     * Gets the value of the textCol1 property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextCol1()
+    {
+      return textCol1;
+    }
+
+    /**
+     * Sets the value of the textCol1 property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextCol1(Integer value)
+    {
+      this.textCol1 = value;
+    }
+
+    /**
+     * Gets the value of the textCol2 property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextCol2()
+    {
+      return textCol2;
+    }
+
+    /**
+     * Sets the value of the textCol2 property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextCol2(Integer value)
+    {
+      this.textCol2 = value;
+    }
+
+    /**
+     * Gets the value of the textColThreshold property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getTextColThreshold()
+    {
+      return textColThreshold;
+    }
+
+    /**
+     * Sets the value of the textColThreshold property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setTextColThreshold(Integer value)
+    {
+      this.textColThreshold = value;
+    }
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getId()
+    {
+      return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setId(String value)
+    {
+      this.id = value;
+    }
+
+    /**
+     * Gets the value of the complementId property.
+     * 
+     * @return possible object is {@link String }
+     * 
+     */
+    public String getComplementId()
+    {
+      return complementId;
+    }
+
+    /**
+     * Sets the value of the complementId property.
+     * 
+     * @param value
+     *          allowed object is {@link String }
+     * 
+     */
+    public void setComplementId(String value)
+    {
+      this.complementId = value;
+    }
+
+    /**
+     * Gets the value of the width property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getWidth()
+    {
+      return width;
+    }
+
+    /**
+     * Sets the value of the width property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setWidth(Integer value)
+    {
+      this.width = value;
+    }
+
+    /**
+     * Gets the value of the height property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getHeight()
+    {
+      return height;
+    }
+
+    /**
+     * Sets the value of the height property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setHeight(Integer value)
+    {
+      this.height = value;
+    }
+
+    /**
+     * Gets the value of the xpos property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getXpos()
+    {
+      return xpos;
+    }
+
+    /**
+     * Sets the value of the xpos property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setXpos(Integer value)
+    {
+      this.xpos = value;
+    }
+
+    /**
+     * Gets the value of the ypos property.
+     * 
+     * @return possible object is {@link Integer }
+     * 
+     */
+    public Integer getYpos()
+    {
+      return ypos;
+    }
+
+    /**
+     * Sets the value of the ypos property.
+     * 
+     * @param value
+     *          allowed object is {@link Integer }
+     * 
+     */
+    public void setYpos(Integer value)
+    {
+      this.ypos = value;
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
+     *       &lt;attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+     *       &lt;attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+     *     &lt;/extension>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "")
+    public static class CalcIdParam extends WebServiceParameterSet
+    {
+
+      @XmlAttribute(name = "calcId", required = true)
+      protected String calcId;
+
+      @XmlAttribute(name = "needsUpdate")
+      protected Boolean needsUpdate;
+
+      @XmlAttribute(name = "autoUpdate", required = true)
+      protected boolean autoUpdate;
+
+      /**
+       * Gets the value of the calcId property.
+       * 
+       * @return possible object is {@link String }
+       * 
+       */
+      public String getCalcId()
+      {
+        return calcId;
+      }
+
+      /**
+       * Sets the value of the calcId property.
+       * 
+       * @param value
+       *          allowed object is {@link String }
+       * 
+       */
+      public void setCalcId(String value)
+      {
+        this.calcId = value;
+      }
+
+      /**
+       * Gets the value of the needsUpdate property.
+       * 
+       * @return possible object is {@link Boolean }
+       * 
+       */
+      public boolean isNeedsUpdate()
+      {
+        if (needsUpdate == null)
+        {
+          return false;
+        }
+        else
+        {
+          return needsUpdate;
+        }
+      }
+
+      /**
+       * Sets the value of the needsUpdate property.
+       * 
+       * @param value
+       *          allowed object is {@link Boolean }
+       * 
+       */
+      public void setNeedsUpdate(Boolean value)
+      {
+        this.needsUpdate = value;
+      }
+
+      /**
+       * Gets the value of the autoUpdate property.
+       * 
+       */
+      public boolean isAutoUpdate()
+      {
+        return autoUpdate;
+      }
+
+      /**
+       * Sets the value of the autoUpdate property.
+       * 
+       */
+      public void setAutoUpdate(boolean value)
+      {
+        this.autoUpdate = value;
+      }
+
+    }
+
+    /**
+     * <p>
+     * Java class for anonymous complex type.
+     * 
+     * <p>
+     * The following schema fragment specifies the expected content contained
+     * within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       &lt;attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *       &lt;attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
+     *     &lt;/restriction>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "")
+    public static class HiddenColumns
+    {
+
+      @XmlAttribute(name = "start")
+      protected Integer start;
+
+      @XmlAttribute(name = "end")
+      protected Integer end;
+
+      /**
+       * Gets the value of the start property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getStart()
+      {
+        return start;
+      }
+
+      /**
+       * Sets the value of the start property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setStart(Integer value)
+      {
+        this.start = value;
+      }
+
+      /**
+       * Gets the value of the end property.
+       * 
+       * @return possible object is {@link Integer }
+       * 
+       */
+      public Integer getEnd()
+      {
+        return end;
+      }
+
+      /**
+       * Sets the value of the end property.
+       * 
+       * @param value
+       *          allowed object is {@link Integer }
+       * 
+       */
+      public void setEnd(Integer value)
+      {
+        this.end = value;
+      }
+
+    }
+
+  }
+
+}
diff --git a/src/jalview/xml/binding/jalviewBH/SequenceSet.java b/src/jalview/xml/binding/jalviewBH/SequenceSet.java
new file mode 100644 (file)
index 0000000..d78c585
--- /dev/null
@@ -0,0 +1,324 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2018.09.18 at 04:36:20 PM BST 
+//
+
+
+package jalview.xml.binding.jalviewBH;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType>
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{www.vamsas.ac.uk/jalview/version2}Sequence" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{www.vamsas.ac.uk/jalview/version2}Annotation" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element name="sequenceSetProperties" maxOccurs="unbounded" minOccurs="0">
+ *           &lt;complexType>
+ *             &lt;complexContent>
+ *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                 &lt;attribute name="key" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 &lt;attribute name="value" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *               &lt;/restriction>
+ *             &lt;/complexContent>
+ *           &lt;/complexType>
+ *         &lt;/element>
+ *         &lt;element ref="{www.vamsas.ac.uk/jalview/version2}AlcodonFrame" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="gapChar" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="datasetId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+    "sequence",
+    "annotation",
+    "sequenceSetProperties",
+    "alcodonFrame"
+})
+@XmlRootElement(name = "SequenceSet")
+public class SequenceSet {
+
+       // BH testing here
+       private class Sequence {}
+       private class Annotation {}
+       private class AlcodonFrame {}
+       //
+       
+    @XmlElement(name = "Sequence")
+    protected List<Sequence> sequence;
+    @XmlElement(name = "Annotation")
+    protected List<Annotation> annotation;
+    protected List<SequenceSet.SequenceSetProperties> sequenceSetProperties;
+    @XmlElement(name = "AlcodonFrame")
+    protected List<AlcodonFrame> alcodonFrame;
+    @XmlAttribute(name = "gapChar", required = true)
+    protected String gapChar;
+    @XmlAttribute(name = "datasetId")
+    protected String datasetId;
+
+    /**
+     * Gets the value of the sequence property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the sequence property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getSequence().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Sequence }
+     * 
+     * 
+     */
+    public List<Sequence> getSequence() {
+        if (sequence == null) {
+            sequence = new ArrayList<Sequence>();
+        }
+        return this.sequence;
+    }
+
+    /**
+     * Gets the value of the annotation property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the annotation property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAnnotation().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Annotation }
+     * 
+     * 
+     */
+    public List<Annotation> getAnnotation() {
+        if (annotation == null) {
+            annotation = new ArrayList<Annotation>();
+        }
+        return this.annotation;
+    }
+
+    /**
+     * Gets the value of the sequenceSetProperties property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the sequenceSetProperties property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getSequenceSetProperties().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link SequenceSet.SequenceSetProperties }
+     * 
+     * 
+     */
+    public List<SequenceSet.SequenceSetProperties> getSequenceSetProperties() {
+        if (sequenceSetProperties == null) {
+            sequenceSetProperties = new ArrayList<SequenceSet.SequenceSetProperties>();
+        }
+        return this.sequenceSetProperties;
+    }
+
+    /**
+     * Gets the value of the alcodonFrame property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the alcodonFrame property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAlcodonFrame().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link AlcodonFrame }
+     * 
+     * 
+     */
+    public List<AlcodonFrame> getAlcodonFrame() {
+        if (alcodonFrame == null) {
+            alcodonFrame = new ArrayList<AlcodonFrame>();
+        }
+        return this.alcodonFrame;
+    }
+
+    /**
+     * Gets the value of the gapChar property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGapChar() {
+        return gapChar;
+    }
+
+    /**
+     * Sets the value of the gapChar property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGapChar(String value) {
+        this.gapChar = value;
+    }
+
+    /**
+     * Gets the value of the datasetId property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getDatasetId() {
+        return datasetId;
+    }
+
+    /**
+     * Sets the value of the datasetId property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setDatasetId(String value) {
+        this.datasetId = value;
+    }
+
+
+    /**
+     * <p>Java class for anonymous complex type.
+     * 
+     * <p>The following schema fragment specifies the expected content contained within this class.
+     * 
+     * <pre>
+     * &lt;complexType>
+     *   &lt;complexContent>
+     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       &lt;attribute name="key" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       &lt;attribute name="value" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *     &lt;/restriction>
+     *   &lt;/complexContent>
+     * &lt;/complexType>
+     * </pre>
+     * 
+     * 
+     */
+    @XmlAccessorType(XmlAccessType.FIELD)
+    @XmlType(name = "")
+    public static class SequenceSetProperties {
+
+        @XmlAttribute(name = "key")
+        protected String key;
+        @XmlAttribute(name = "value")
+        protected String value;
+
+        /**
+         * Gets the value of the key property.
+         * 
+         * @return
+         *     possible object is
+         *     {@link String }
+         *     
+         */
+        public String getKey() {
+            return key;
+        }
+
+        /**
+         * Sets the value of the key property.
+         * 
+         * @param value
+         *     allowed object is
+         *     {@link String }
+         *     
+         */
+        public void setKey(String value) {
+            this.key = value;
+        }
+
+        /**
+         * Gets the value of the value property.
+         * 
+         * @return
+         *     possible object is
+         *     {@link String }
+         *     
+         */
+        public String getValue() {
+            return value;
+        }
+
+        /**
+         * Sets the value of the value property.
+         * 
+         * @param value
+         *     allowed object is
+         *     {@link String }
+         *     
+         */
+        public void setValue(String value) {
+            this.value = value;
+        }
+
+    }
+
+}
diff --git a/src/jalview/xml/binding/jalviewBH/VAMSAS.java b/src/jalview/xml/binding/jalviewBH/VAMSAS.java
new file mode 100644 (file)
index 0000000..c10f7df
--- /dev/null
@@ -0,0 +1,109 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2018.09.18 at 04:36:20 PM BST 
+//
+
+
+package jalview.xml.binding.jalviewBH;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for VAMSAS complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="VAMSAS">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element name="Tree" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{www.vamsas.ac.uk/jalview/version2}SequenceSet" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "VAMSAS", propOrder = {
+    "tree",
+    "sequenceSet"
+})
+public class VAMSAS {
+
+    @XmlElement(name = "Tree")
+    protected List<String> tree;
+    @XmlElement(name = "SequenceSet")
+    protected List<SequenceSet> sequenceSet;
+
+    /**
+     * Gets the value of the tree property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tree property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTree().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getTree() {
+        if (tree == null) {
+            tree = new ArrayList<String>();
+        }
+        return this.tree;
+    }
+
+    /**
+     * Gets the value of the sequenceSet property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the sequenceSet property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getSequenceSet().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link SequenceSet }
+     * 
+     * 
+     */
+    public List<SequenceSet> getSequenceSet() {
+        if (sequenceSet == null) {
+            sequenceSet = new ArrayList<SequenceSet>();
+        }
+        return this.sequenceSet;
+    }
+
+}