Permalink
Switch branches/tags
stable-20161113-115302 stable-20151214-102407 stable-20150506-095613 stable-20150401-084749 stable-20150126-161805 stable-20150120-095010 stable-20150120-091856 stable-20141219-150702 stable-20141029-170046 stable-20140715-165046 stable-20140530-090013 stable-20140521-143929 stable-20140509-113028 stable-20140509-110423 stable-20140415-165131 stable-20140414-164252 stable-20140414-144950 stable-20140414-131645 stable-20140408-135559 stable-20140408-132007 stable-20140408-115925 stable-20140408-093224 stable-20140401-201237 stable-20140121-151530 stable-20131109-100904 stable-20131029-195331 stable-20131029-122855 stable-20131029-112113 stable-20131017-152801 stable-20131011-075152 stable-20131011-063031 stable-20130921-135958 stable-20130916-144056 stable-20130913-105858 stable-20130910-194700 stable-20130829-132728 stable-20130715-164340 stable-20130704-153848 stable-20130704-142212 stable-20130619-100454 stable-20130613-130244 stable-20130611-165054 stable-20130610-140141 stable-20130610-132636 stable-20130503-165927 stable-20130502-102630 stable-20130416-220145 stable-20130413-115331 stable-20130411-234003 stable-20130410-214334 stable-20130402-171749 stable-20130320-170602 stable-20130314-105529 stable-20130308-184852 stable-20130227-171949 stable-20130225-155835 jenkins-Sireum-Update-Site-Stable-8 jenkins-Sireum-Update-Site-Stable-4 jenkins-Sireum-Update-Site-Stable-3 jenkins-Sireum-Update-Site-Stable-2 jenkins-Sireum-Update-Site-Stable-1 jenkins-Sireum-Update-Site-Dev-28 jenkins-Sireum-Update-Site-Dev-27 jenkins-Sireum-Update-Site-Dev-26 jenkins-Sireum-Update-Site-Dev-25 jenkins-Sireum-Update-Site-Dev-22 jenkins-Sireum-Update-Site-Dev-21 jenkins-Sireum-Update-Site-Dev-20 jenkins-Sireum-Update-Site-Dev-19 jenkins-Sireum-Update-Site-Dev-9 jenkins-Sireum-Update-Site-Dev-8 jenkins-Sireum-Update-Site-Dev-7 jenkins-Sireum-Update-Site-Dev-6 jenkins-Sireum-Update-Site-Dev-5 jenkins-Sireum-Update-Site-Dev-4 jenkins-Sireum-Update-Site-Dev-3 jenkins-Sireum-Update-Site-Dev-2 jenkins-Sireum-Dev-Update-Site-4 dev-20170105-002220 dev-20170104-002209 dev-20170103-002224 dev-20170102-002232 dev-20170101-002323 dev-20161231-002215 dev-20161230-002128 dev-20161229-002120 dev-20161228-002120 dev-20161227-002152 dev-20161226-002112 dev-20161225-002134 dev-20161224-002237 dev-20161223-002038 dev-20161222-002119 dev-20161221-002125 dev-20161220-002005 dev-20161219-002121 dev-20161218-002028 dev-20161217-002158 dev-20161216-002152 dev-20161215-002033
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
8064 lines (7101 sloc) 352 KB
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation xml:lang="en">
XML Schema (XSD) for Ada.
This file was generated by the gnat2xsd tool.
gnat2xsd Copyright (C) 2012-2013, AdaCore, Inc.
This schema is open source and is licensed under the Eclipse Public
License (EPL). See http://www.eclipse.org/legal/epl-v10.html
There are several sections below:
Basic Types. General-purpose elements used everywhere.
Abstract Classes. Unions of concrete types.
List Types. Lists of abstract class types.
Boolean Elements. These indicate that the corresponding
query is True; False is indicated by Nil.
Defining Occurrences. Elements for defining occurrences,
such as Defining_Identifier.
Usage Occurrences. Elements for usage occurrences
(references to defining occurrences), such as Identifier.
Other Elements. All syntactic structures that don't fall
under defining or usage occurrences.
</xsd:documentation>
</xsd:annotation>
<!-- ================================================================ -->
<!-- Basic Types -->
<xsd:complexType name="Source_Location">
<xsd:attribute name="line" type="xsd:positiveInteger" use="required"/>
<xsd:attribute name="col" type="xsd:positiveInteger" use="required"/>
<xsd:attribute name="endline" type="xsd:nonNegativeInteger" use="required"/>
<xsd:attribute name="endcol" type="xsd:nonNegativeInteger" use="required"/>
</xsd:complexType>
<xsd:element name="not_an_element" type="Not_An_Element"/>
<xsd:complexType name="Not_An_Element">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="compilation_unit" type="Compilation_Unit"/>
<xsd:complexType name="Compilation_Unit">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
<xsd:element name="context_clause_elements_ql" type="Context_Clause_List"/>
<xsd:element name="unit_declaration_q" type="Declaration_Class"/>
<xsd:element name="pragmas_after_ql" type="Element_List"/>
</xsd:sequence>
<xsd:attribute name="unit_kind" type="xsd:string" use="required"/>
<xsd:attribute name="unit_class" type="xsd:string" use="required"/>
<xsd:attribute name="unit_origin" type="xsd:string" use="required"/>
<xsd:attribute name="unit_full_name" type="xsd:string" use="required"/>
<xsd:attribute name="def_name" type="xsd:string" use="required"/>
<xsd:attribute name="source_file" type="xsd:string" use="required"/>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<!-- ================================================================ -->
<!-- Abstract Classes -->
<xsd:complexType name="Element_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="defining_identifier"/>
<xsd:element ref="defining_character_literal"/>
<xsd:element ref="defining_enumeration_literal"/>
<xsd:element ref="defining_and_operator"/>
<xsd:element ref="defining_or_operator"/>
<xsd:element ref="defining_xor_operator"/>
<xsd:element ref="defining_equal_operator"/>
<xsd:element ref="defining_not_equal_operator"/>
<xsd:element ref="defining_less_than_operator"/>
<xsd:element ref="defining_less_than_or_equal_operator"/>
<xsd:element ref="defining_greater_than_operator"/>
<xsd:element ref="defining_greater_than_or_equal_operator"/>
<xsd:element ref="defining_plus_operator"/>
<xsd:element ref="defining_minus_operator"/>
<xsd:element ref="defining_concatenate_operator"/>
<xsd:element ref="defining_unary_plus_operator"/>
<xsd:element ref="defining_unary_minus_operator"/>
<xsd:element ref="defining_multiply_operator"/>
<xsd:element ref="defining_divide_operator"/>
<xsd:element ref="defining_mod_operator"/>
<xsd:element ref="defining_rem_operator"/>
<xsd:element ref="defining_exponentiate_operator"/>
<xsd:element ref="defining_abs_operator"/>
<xsd:element ref="defining_not_operator"/>
<xsd:element ref="defining_expanded_name"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:element ref="derived_type_definition"/>
<xsd:element ref="derived_record_extension_definition"/>
<xsd:element ref="enumeration_type_definition"/>
<xsd:element ref="signed_integer_type_definition"/>
<xsd:element ref="modular_type_definition"/>
<xsd:element ref="root_integer_definition"/>
<xsd:element ref="root_real_definition"/>
<xsd:element ref="universal_integer_definition"/>
<xsd:element ref="universal_real_definition"/>
<xsd:element ref="universal_fixed_definition"/>
<xsd:element ref="floating_point_definition"/>
<xsd:element ref="ordinary_fixed_point_definition"/>
<xsd:element ref="decimal_fixed_point_definition"/>
<xsd:element ref="unconstrained_array_definition"/>
<xsd:element ref="constrained_array_definition"/>
<xsd:element ref="record_type_definition"/>
<xsd:element ref="tagged_record_type_definition"/>
<xsd:element ref="ordinary_interface"/>
<xsd:element ref="limited_interface"/>
<xsd:element ref="task_interface"/>
<xsd:element ref="protected_interface"/>
<xsd:element ref="synchronized_interface"/>
<xsd:element ref="pool_specific_access_to_variable"/>
<xsd:element ref="access_to_variable"/>
<xsd:element ref="access_to_constant"/>
<xsd:element ref="access_to_procedure"/>
<xsd:element ref="access_to_protected_procedure"/>
<xsd:element ref="access_to_function"/>
<xsd:element ref="access_to_protected_function"/>
<xsd:element ref="subtype_indication"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:element ref="digits_constraint"/>
<xsd:element ref="delta_constraint"/>
<xsd:element ref="index_constraint"/>
<xsd:element ref="discriminant_constraint"/>
<xsd:element ref="component_definition"/>
<xsd:element ref="discrete_subtype_indication_as_subtype_definition"/>
<xsd:element ref="discrete_range_attribute_reference_as_subtype_definition"/>
<xsd:element ref="discrete_simple_expression_range_as_subtype_definition"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="unknown_discriminant_part"/>
<xsd:element ref="known_discriminant_part"/>
<xsd:element ref="record_definition"/>
<xsd:element ref="null_record_definition"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="variant"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="anonymous_access_to_variable"/>
<xsd:element ref="anonymous_access_to_constant"/>
<xsd:element ref="anonymous_access_to_procedure"/>
<xsd:element ref="anonymous_access_to_protected_procedure"/>
<xsd:element ref="anonymous_access_to_function"/>
<xsd:element ref="anonymous_access_to_protected_function"/>
<xsd:element ref="private_type_definition"/>
<xsd:element ref="tagged_private_type_definition"/>
<xsd:element ref="private_extension_definition"/>
<xsd:element ref="task_definition"/>
<xsd:element ref="protected_definition"/>
<xsd:element ref="formal_private_type_definition"/>
<xsd:element ref="formal_tagged_private_type_definition"/>
<xsd:element ref="formal_derived_type_definition"/>
<xsd:element ref="formal_discrete_type_definition"/>
<xsd:element ref="formal_signed_integer_type_definition"/>
<xsd:element ref="formal_modular_type_definition"/>
<xsd:element ref="formal_floating_point_definition"/>
<xsd:element ref="formal_ordinary_fixed_point_definition"/>
<xsd:element ref="formal_decimal_fixed_point_definition"/>
<xsd:element ref="formal_ordinary_interface"/>
<xsd:element ref="formal_limited_interface"/>
<xsd:element ref="formal_task_interface"/>
<xsd:element ref="formal_protected_interface"/>
<xsd:element ref="formal_synchronized_interface"/>
<xsd:element ref="formal_unconstrained_array_definition"/>
<xsd:element ref="formal_constrained_array_definition"/>
<xsd:element ref="formal_pool_specific_access_to_variable"/>
<xsd:element ref="formal_access_to_variable"/>
<xsd:element ref="formal_access_to_constant"/>
<xsd:element ref="formal_access_to_procedure"/>
<xsd:element ref="formal_access_to_protected_procedure"/>
<xsd:element ref="formal_access_to_function"/>
<xsd:element ref="formal_access_to_protected_function"/>
<xsd:element ref="aspect_specification"/>
<xsd:element ref="box_expression"/>
<xsd:element ref="integer_literal"/>
<xsd:element ref="real_literal"/>
<xsd:element ref="string_literal"/>
<xsd:element ref="identifier"/>
<xsd:element ref="and_operator"/>
<xsd:element ref="or_operator"/>
<xsd:element ref="xor_operator"/>
<xsd:element ref="equal_operator"/>
<xsd:element ref="not_equal_operator"/>
<xsd:element ref="less_than_operator"/>
<xsd:element ref="less_than_or_equal_operator"/>
<xsd:element ref="greater_than_operator"/>
<xsd:element ref="greater_than_or_equal_operator"/>
<xsd:element ref="plus_operator"/>
<xsd:element ref="minus_operator"/>
<xsd:element ref="concatenate_operator"/>
<xsd:element ref="unary_plus_operator"/>
<xsd:element ref="unary_minus_operator"/>
<xsd:element ref="multiply_operator"/>
<xsd:element ref="divide_operator"/>
<xsd:element ref="mod_operator"/>
<xsd:element ref="rem_operator"/>
<xsd:element ref="exponentiate_operator"/>
<xsd:element ref="abs_operator"/>
<xsd:element ref="not_operator"/>
<xsd:element ref="character_literal"/>
<xsd:element ref="enumeration_literal"/>
<xsd:element ref="explicit_dereference"/>
<xsd:element ref="function_call"/>
<xsd:element ref="indexed_component"/>
<xsd:element ref="slice"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="access_attribute"/>
<xsd:element ref="address_attribute"/>
<xsd:element ref="adjacent_attribute"/>
<xsd:element ref="aft_attribute"/>
<xsd:element ref="alignment_attribute"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="bit_order_attribute"/>
<xsd:element ref="body_version_attribute"/>
<xsd:element ref="callable_attribute"/>
<xsd:element ref="caller_attribute"/>
<xsd:element ref="ceiling_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:element ref="component_size_attribute"/>
<xsd:element ref="compose_attribute"/>
<xsd:element ref="constrained_attribute"/>
<xsd:element ref="copy_sign_attribute"/>
<xsd:element ref="count_attribute"/>
<xsd:element ref="definite_attribute"/>
<xsd:element ref="delta_attribute"/>
<xsd:element ref="denorm_attribute"/>
<xsd:element ref="digits_attribute"/>
<xsd:element ref="exponent_attribute"/>
<xsd:element ref="external_tag_attribute"/>
<xsd:element ref="first_attribute"/>
<xsd:element ref="first_bit_attribute"/>
<xsd:element ref="floor_attribute"/>
<xsd:element ref="fore_attribute"/>
<xsd:element ref="fraction_attribute"/>
<xsd:element ref="identity_attribute"/>
<xsd:element ref="image_attribute"/>
<xsd:element ref="input_attribute"/>
<xsd:element ref="last_attribute"/>
<xsd:element ref="last_bit_attribute"/>
<xsd:element ref="leading_part_attribute"/>
<xsd:element ref="length_attribute"/>
<xsd:element ref="machine_attribute"/>
<xsd:element ref="machine_emax_attribute"/>
<xsd:element ref="machine_emin_attribute"/>
<xsd:element ref="machine_mantissa_attribute"/>
<xsd:element ref="machine_overflows_attribute"/>
<xsd:element ref="machine_radix_attribute"/>
<xsd:element ref="machine_rounds_attribute"/>
<xsd:element ref="max_attribute"/>
<xsd:element ref="max_size_in_storage_elements_attribute"/>
<xsd:element ref="min_attribute"/>
<xsd:element ref="model_attribute"/>
<xsd:element ref="model_emin_attribute"/>
<xsd:element ref="model_epsilon_attribute"/>
<xsd:element ref="model_mantissa_attribute"/>
<xsd:element ref="model_small_attribute"/>
<xsd:element ref="modulus_attribute"/>
<xsd:element ref="output_attribute"/>
<xsd:element ref="partition_id_attribute"/>
<xsd:element ref="pos_attribute"/>
<xsd:element ref="position_attribute"/>
<xsd:element ref="pred_attribute"/>
<xsd:element ref="range_attribute"/>
<xsd:element ref="read_attribute"/>
<xsd:element ref="remainder_attribute"/>
<xsd:element ref="round_attribute"/>
<xsd:element ref="rounding_attribute"/>
<xsd:element ref="safe_first_attribute"/>
<xsd:element ref="safe_last_attribute"/>
<xsd:element ref="scale_attribute"/>
<xsd:element ref="scaling_attribute"/>
<xsd:element ref="signed_zeros_attribute"/>
<xsd:element ref="size_attribute"/>
<xsd:element ref="small_attribute"/>
<xsd:element ref="storage_pool_attribute"/>
<xsd:element ref="storage_size_attribute"/>
<xsd:element ref="succ_attribute"/>
<xsd:element ref="tag_attribute"/>
<xsd:element ref="terminated_attribute"/>
<xsd:element ref="truncation_attribute"/>
<xsd:element ref="unbiased_rounding_attribute"/>
<xsd:element ref="unchecked_access_attribute"/>
<xsd:element ref="val_attribute"/>
<xsd:element ref="valid_attribute"/>
<xsd:element ref="value_attribute"/>
<xsd:element ref="version_attribute"/>
<xsd:element ref="wide_image_attribute"/>
<xsd:element ref="wide_value_attribute"/>
<xsd:element ref="wide_width_attribute"/>
<xsd:element ref="width_attribute"/>
<xsd:element ref="write_attribute"/>
<xsd:element ref="machine_rounding_attribute"/>
<xsd:element ref="mod_attribute"/>
<xsd:element ref="priority_attribute"/>
<xsd:element ref="stream_size_attribute"/>
<xsd:element ref="wide_wide_image_attribute"/>
<xsd:element ref="wide_wide_value_attribute"/>
<xsd:element ref="wide_wide_width_attribute"/>
<xsd:element ref="max_alignment_for_allocation_attribute"/>
<xsd:element ref="overlaps_storage_attribute"/>
<xsd:element ref="implementation_defined_attribute"/>
<xsd:element ref="unknown_attribute"/>
<xsd:element ref="record_aggregate"/>
<xsd:element ref="extension_aggregate"/>
<xsd:element ref="positional_array_aggregate"/>
<xsd:element ref="named_array_aggregate"/>
<xsd:element ref="and_then_short_circuit"/>
<xsd:element ref="or_else_short_circuit"/>
<xsd:element ref="in_membership_test"/>
<xsd:element ref="not_in_membership_test"/>
<xsd:element ref="null_literal"/>
<xsd:element ref="parenthesized_expression"/>
<xsd:element ref="raise_expression"/>
<xsd:element ref="type_conversion"/>
<xsd:element ref="qualified_expression"/>
<xsd:element ref="allocation_from_subtype"/>
<xsd:element ref="allocation_from_qualified_expression"/>
<xsd:element ref="case_expression"/>
<xsd:element ref="if_expression"/>
<xsd:element ref="for_all_quantified_expression"/>
<xsd:element ref="for_some_quantified_expression"/>
<xsd:element ref="pragma_argument_association"/>
<xsd:element ref="discriminant_association"/>
<xsd:element ref="record_component_association"/>
<xsd:element ref="array_component_association"/>
<xsd:element ref="parameter_association"/>
<xsd:element ref="generic_association"/>
<xsd:element ref="null_statement"/>
<xsd:element ref="assignment_statement"/>
<xsd:element ref="if_statement"/>
<xsd:element ref="case_statement"/>
<xsd:element ref="loop_statement"/>
<xsd:element ref="while_loop_statement"/>
<xsd:element ref="for_loop_statement"/>
<xsd:element ref="block_statement"/>
<xsd:element ref="exit_statement"/>
<xsd:element ref="goto_statement"/>
<xsd:element ref="procedure_call_statement"/>
<xsd:element ref="return_statement"/>
<xsd:element ref="extended_return_statement"/>
<xsd:element ref="accept_statement"/>
<xsd:element ref="entry_call_statement"/>
<xsd:element ref="requeue_statement"/>
<xsd:element ref="requeue_statement_with_abort"/>
<xsd:element ref="delay_until_statement"/>
<xsd:element ref="delay_relative_statement"/>
<xsd:element ref="terminate_alternative_statement"/>
<xsd:element ref="selective_accept_statement"/>
<xsd:element ref="timed_entry_call_statement"/>
<xsd:element ref="conditional_entry_call_statement"/>
<xsd:element ref="asynchronous_select_statement"/>
<xsd:element ref="abort_statement"/>
<xsd:element ref="raise_statement"/>
<xsd:element ref="code_statement"/>
<xsd:element ref="if_path"/>
<xsd:element ref="elsif_path"/>
<xsd:element ref="else_path"/>
<xsd:element ref="case_path"/>
<xsd:element ref="select_path"/>
<xsd:element ref="or_path"/>
<xsd:element ref="then_abort_path"/>
<xsd:element ref="case_expression_path"/>
<xsd:element ref="if_expression_path"/>
<xsd:element ref="elsif_expression_path"/>
<xsd:element ref="else_expression_path"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:element ref="enumeration_representation_clause"/>
<xsd:element ref="record_representation_clause"/>
<xsd:element ref="at_clause"/>
<xsd:element ref="component_clause"/>
<xsd:element ref="exception_handler"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Association_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="pragma_argument_association"/>
<xsd:element ref="discriminant_association"/>
<xsd:element ref="record_component_association"/>
<xsd:element ref="array_component_association"/>
<xsd:element ref="parameter_association"/>
<xsd:element ref="generic_association"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Constraint_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:element ref="digits_constraint"/>
<xsd:element ref="delta_constraint"/>
<xsd:element ref="index_constraint"/>
<xsd:element ref="discriminant_constraint"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Context_Clause_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Declaration_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Declarative_Item_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:element ref="enumeration_representation_clause"/>
<xsd:element ref="record_representation_clause"/>
<xsd:element ref="at_clause"/>
<xsd:element ref="component_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Definition_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="derived_type_definition"/>
<xsd:element ref="derived_record_extension_definition"/>
<xsd:element ref="enumeration_type_definition"/>
<xsd:element ref="signed_integer_type_definition"/>
<xsd:element ref="modular_type_definition"/>
<xsd:element ref="root_integer_definition"/>
<xsd:element ref="root_real_definition"/>
<xsd:element ref="universal_integer_definition"/>
<xsd:element ref="universal_real_definition"/>
<xsd:element ref="universal_fixed_definition"/>
<xsd:element ref="floating_point_definition"/>
<xsd:element ref="ordinary_fixed_point_definition"/>
<xsd:element ref="decimal_fixed_point_definition"/>
<xsd:element ref="unconstrained_array_definition"/>
<xsd:element ref="constrained_array_definition"/>
<xsd:element ref="record_type_definition"/>
<xsd:element ref="tagged_record_type_definition"/>
<xsd:element ref="ordinary_interface"/>
<xsd:element ref="limited_interface"/>
<xsd:element ref="task_interface"/>
<xsd:element ref="protected_interface"/>
<xsd:element ref="synchronized_interface"/>
<xsd:element ref="pool_specific_access_to_variable"/>
<xsd:element ref="access_to_variable"/>
<xsd:element ref="access_to_constant"/>
<xsd:element ref="access_to_procedure"/>
<xsd:element ref="access_to_protected_procedure"/>
<xsd:element ref="access_to_function"/>
<xsd:element ref="access_to_protected_function"/>
<xsd:element ref="subtype_indication"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:element ref="digits_constraint"/>
<xsd:element ref="delta_constraint"/>
<xsd:element ref="index_constraint"/>
<xsd:element ref="discriminant_constraint"/>
<xsd:element ref="component_definition"/>
<xsd:element ref="discrete_subtype_indication_as_subtype_definition"/>
<xsd:element ref="discrete_range_attribute_reference_as_subtype_definition"/>
<xsd:element ref="discrete_simple_expression_range_as_subtype_definition"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="unknown_discriminant_part"/>
<xsd:element ref="known_discriminant_part"/>
<xsd:element ref="record_definition"/>
<xsd:element ref="null_record_definition"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="variant"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="anonymous_access_to_variable"/>
<xsd:element ref="anonymous_access_to_constant"/>
<xsd:element ref="anonymous_access_to_procedure"/>
<xsd:element ref="anonymous_access_to_protected_procedure"/>
<xsd:element ref="anonymous_access_to_function"/>
<xsd:element ref="anonymous_access_to_protected_function"/>
<xsd:element ref="private_type_definition"/>
<xsd:element ref="tagged_private_type_definition"/>
<xsd:element ref="private_extension_definition"/>
<xsd:element ref="task_definition"/>
<xsd:element ref="protected_definition"/>
<xsd:element ref="formal_private_type_definition"/>
<xsd:element ref="formal_tagged_private_type_definition"/>
<xsd:element ref="formal_derived_type_definition"/>
<xsd:element ref="formal_discrete_type_definition"/>
<xsd:element ref="formal_signed_integer_type_definition"/>
<xsd:element ref="formal_modular_type_definition"/>
<xsd:element ref="formal_floating_point_definition"/>
<xsd:element ref="formal_ordinary_fixed_point_definition"/>
<xsd:element ref="formal_decimal_fixed_point_definition"/>
<xsd:element ref="formal_ordinary_interface"/>
<xsd:element ref="formal_limited_interface"/>
<xsd:element ref="formal_task_interface"/>
<xsd:element ref="formal_protected_interface"/>
<xsd:element ref="formal_synchronized_interface"/>
<xsd:element ref="formal_unconstrained_array_definition"/>
<xsd:element ref="formal_constrained_array_definition"/>
<xsd:element ref="formal_pool_specific_access_to_variable"/>
<xsd:element ref="formal_access_to_variable"/>
<xsd:element ref="formal_access_to_constant"/>
<xsd:element ref="formal_access_to_procedure"/>
<xsd:element ref="formal_access_to_protected_procedure"/>
<xsd:element ref="formal_access_to_function"/>
<xsd:element ref="formal_access_to_protected_function"/>
<xsd:element ref="aspect_specification"/>
<xsd:element ref="identifier"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Discrete_Range_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Discrete_Subtype_Definition_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discrete_subtype_indication_as_subtype_definition"/>
<xsd:element ref="discrete_range_attribute_reference_as_subtype_definition"/>
<xsd:element ref="discrete_simple_expression_range_as_subtype_definition"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Defining_Name_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="defining_identifier"/>
<xsd:element ref="defining_character_literal"/>
<xsd:element ref="defining_enumeration_literal"/>
<xsd:element ref="defining_and_operator"/>
<xsd:element ref="defining_or_operator"/>
<xsd:element ref="defining_xor_operator"/>
<xsd:element ref="defining_equal_operator"/>
<xsd:element ref="defining_not_equal_operator"/>
<xsd:element ref="defining_less_than_operator"/>
<xsd:element ref="defining_less_than_or_equal_operator"/>
<xsd:element ref="defining_greater_than_operator"/>
<xsd:element ref="defining_greater_than_or_equal_operator"/>
<xsd:element ref="defining_plus_operator"/>
<xsd:element ref="defining_minus_operator"/>
<xsd:element ref="defining_concatenate_operator"/>
<xsd:element ref="defining_unary_plus_operator"/>
<xsd:element ref="defining_unary_minus_operator"/>
<xsd:element ref="defining_multiply_operator"/>
<xsd:element ref="defining_divide_operator"/>
<xsd:element ref="defining_mod_operator"/>
<xsd:element ref="defining_rem_operator"/>
<xsd:element ref="defining_exponentiate_operator"/>
<xsd:element ref="defining_abs_operator"/>
<xsd:element ref="defining_not_operator"/>
<xsd:element ref="defining_expanded_name"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Expression_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="box_expression"/>
<xsd:element ref="integer_literal"/>
<xsd:element ref="real_literal"/>
<xsd:element ref="string_literal"/>
<xsd:element ref="identifier"/>
<xsd:element ref="and_operator"/>
<xsd:element ref="or_operator"/>
<xsd:element ref="xor_operator"/>
<xsd:element ref="equal_operator"/>
<xsd:element ref="not_equal_operator"/>
<xsd:element ref="less_than_operator"/>
<xsd:element ref="less_than_or_equal_operator"/>
<xsd:element ref="greater_than_operator"/>
<xsd:element ref="greater_than_or_equal_operator"/>
<xsd:element ref="plus_operator"/>
<xsd:element ref="minus_operator"/>
<xsd:element ref="concatenate_operator"/>
<xsd:element ref="unary_plus_operator"/>
<xsd:element ref="unary_minus_operator"/>
<xsd:element ref="multiply_operator"/>
<xsd:element ref="divide_operator"/>
<xsd:element ref="mod_operator"/>
<xsd:element ref="rem_operator"/>
<xsd:element ref="exponentiate_operator"/>
<xsd:element ref="abs_operator"/>
<xsd:element ref="not_operator"/>
<xsd:element ref="character_literal"/>
<xsd:element ref="enumeration_literal"/>
<xsd:element ref="explicit_dereference"/>
<xsd:element ref="function_call"/>
<xsd:element ref="indexed_component"/>
<xsd:element ref="slice"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="access_attribute"/>
<xsd:element ref="address_attribute"/>
<xsd:element ref="adjacent_attribute"/>
<xsd:element ref="aft_attribute"/>
<xsd:element ref="alignment_attribute"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="bit_order_attribute"/>
<xsd:element ref="body_version_attribute"/>
<xsd:element ref="callable_attribute"/>
<xsd:element ref="caller_attribute"/>
<xsd:element ref="ceiling_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:element ref="component_size_attribute"/>
<xsd:element ref="compose_attribute"/>
<xsd:element ref="constrained_attribute"/>
<xsd:element ref="copy_sign_attribute"/>
<xsd:element ref="count_attribute"/>
<xsd:element ref="definite_attribute"/>
<xsd:element ref="delta_attribute"/>
<xsd:element ref="denorm_attribute"/>
<xsd:element ref="digits_attribute"/>
<xsd:element ref="exponent_attribute"/>
<xsd:element ref="external_tag_attribute"/>
<xsd:element ref="first_attribute"/>
<xsd:element ref="first_bit_attribute"/>
<xsd:element ref="floor_attribute"/>
<xsd:element ref="fore_attribute"/>
<xsd:element ref="fraction_attribute"/>
<xsd:element ref="identity_attribute"/>
<xsd:element ref="image_attribute"/>
<xsd:element ref="input_attribute"/>
<xsd:element ref="last_attribute"/>
<xsd:element ref="last_bit_attribute"/>
<xsd:element ref="leading_part_attribute"/>
<xsd:element ref="length_attribute"/>
<xsd:element ref="machine_attribute"/>
<xsd:element ref="machine_emax_attribute"/>
<xsd:element ref="machine_emin_attribute"/>
<xsd:element ref="machine_mantissa_attribute"/>
<xsd:element ref="machine_overflows_attribute"/>
<xsd:element ref="machine_radix_attribute"/>
<xsd:element ref="machine_rounds_attribute"/>
<xsd:element ref="max_attribute"/>
<xsd:element ref="max_size_in_storage_elements_attribute"/>
<xsd:element ref="min_attribute"/>
<xsd:element ref="model_attribute"/>
<xsd:element ref="model_emin_attribute"/>
<xsd:element ref="model_epsilon_attribute"/>
<xsd:element ref="model_mantissa_attribute"/>
<xsd:element ref="model_small_attribute"/>
<xsd:element ref="modulus_attribute"/>
<xsd:element ref="output_attribute"/>
<xsd:element ref="partition_id_attribute"/>
<xsd:element ref="pos_attribute"/>
<xsd:element ref="position_attribute"/>
<xsd:element ref="pred_attribute"/>
<xsd:element ref="range_attribute"/>
<xsd:element ref="read_attribute"/>
<xsd:element ref="remainder_attribute"/>
<xsd:element ref="round_attribute"/>
<xsd:element ref="rounding_attribute"/>
<xsd:element ref="safe_first_attribute"/>
<xsd:element ref="safe_last_attribute"/>
<xsd:element ref="scale_attribute"/>
<xsd:element ref="scaling_attribute"/>
<xsd:element ref="signed_zeros_attribute"/>
<xsd:element ref="size_attribute"/>
<xsd:element ref="small_attribute"/>
<xsd:element ref="storage_pool_attribute"/>
<xsd:element ref="storage_size_attribute"/>
<xsd:element ref="succ_attribute"/>
<xsd:element ref="tag_attribute"/>
<xsd:element ref="terminated_attribute"/>
<xsd:element ref="truncation_attribute"/>
<xsd:element ref="unbiased_rounding_attribute"/>
<xsd:element ref="unchecked_access_attribute"/>
<xsd:element ref="val_attribute"/>
<xsd:element ref="valid_attribute"/>
<xsd:element ref="value_attribute"/>
<xsd:element ref="version_attribute"/>
<xsd:element ref="wide_image_attribute"/>
<xsd:element ref="wide_value_attribute"/>
<xsd:element ref="wide_width_attribute"/>
<xsd:element ref="width_attribute"/>
<xsd:element ref="write_attribute"/>
<xsd:element ref="machine_rounding_attribute"/>
<xsd:element ref="mod_attribute"/>
<xsd:element ref="priority_attribute"/>
<xsd:element ref="stream_size_attribute"/>
<xsd:element ref="wide_wide_image_attribute"/>
<xsd:element ref="wide_wide_value_attribute"/>
<xsd:element ref="wide_wide_width_attribute"/>
<xsd:element ref="max_alignment_for_allocation_attribute"/>
<xsd:element ref="overlaps_storage_attribute"/>
<xsd:element ref="implementation_defined_attribute"/>
<xsd:element ref="unknown_attribute"/>
<xsd:element ref="record_aggregate"/>
<xsd:element ref="extension_aggregate"/>
<xsd:element ref="positional_array_aggregate"/>
<xsd:element ref="named_array_aggregate"/>
<xsd:element ref="and_then_short_circuit"/>
<xsd:element ref="or_else_short_circuit"/>
<xsd:element ref="in_membership_test"/>
<xsd:element ref="not_in_membership_test"/>
<xsd:element ref="null_literal"/>
<xsd:element ref="parenthesized_expression"/>
<xsd:element ref="raise_expression"/>
<xsd:element ref="type_conversion"/>
<xsd:element ref="qualified_expression"/>
<xsd:element ref="allocation_from_subtype"/>
<xsd:element ref="allocation_from_qualified_expression"/>
<xsd:element ref="case_expression"/>
<xsd:element ref="if_expression"/>
<xsd:element ref="for_all_quantified_expression"/>
<xsd:element ref="for_some_quantified_expression"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Name_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="identifier"/>
<xsd:element ref="selected_component"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Path_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="if_path"/>
<xsd:element ref="elsif_path"/>
<xsd:element ref="else_path"/>
<xsd:element ref="case_path"/>
<xsd:element ref="select_path"/>
<xsd:element ref="or_path"/>
<xsd:element ref="then_abort_path"/>
<xsd:element ref="case_expression_path"/>
<xsd:element ref="if_expression_path"/>
<xsd:element ref="elsif_expression_path"/>
<xsd:element ref="else_expression_path"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Pragma_Element_Class">
<xsd:choice maxOccurs="1">
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Range_Constraint_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Record_Component_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Statement_Class">
<xsd:choice maxOccurs="1">
<xsd:element ref="not_an_element"/>
<xsd:element ref="null_statement"/>
<xsd:element ref="assignment_statement"/>
<xsd:element ref="if_statement"/>
<xsd:element ref="case_statement"/>
<xsd:element ref="loop_statement"/>
<xsd:element ref="while_loop_statement"/>
<xsd:element ref="for_loop_statement"/>
<xsd:element ref="block_statement"/>
<xsd:element ref="exit_statement"/>
<xsd:element ref="goto_statement"/>
<xsd:element ref="procedure_call_statement"/>
<xsd:element ref="return_statement"/>
<xsd:element ref="extended_return_statement"/>
<xsd:element ref="accept_statement"/>
<xsd:element ref="entry_call_statement"/>
<xsd:element ref="requeue_statement"/>
<xsd:element ref="requeue_statement_with_abort"/>
<xsd:element ref="delay_until_statement"/>
<xsd:element ref="delay_relative_statement"/>
<xsd:element ref="terminate_alternative_statement"/>
<xsd:element ref="selective_accept_statement"/>
<xsd:element ref="timed_entry_call_statement"/>
<xsd:element ref="conditional_entry_call_statement"/>
<xsd:element ref="asynchronous_select_statement"/>
<xsd:element ref="abort_statement"/>
<xsd:element ref="raise_statement"/>
<xsd:element ref="code_statement"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:group name="pragmas_group">
<xsd:choice>
<xsd:element ref="all_calls_remote_pragma"/>
<xsd:element ref="asynchronous_pragma"/>
<xsd:element ref="atomic_pragma"/>
<xsd:element ref="atomic_components_pragma"/>
<xsd:element ref="attach_handler_pragma"/>
<xsd:element ref="controlled_pragma"/>
<xsd:element ref="convention_pragma"/>
<xsd:element ref="discard_names_pragma"/>
<xsd:element ref="elaborate_pragma"/>
<xsd:element ref="elaborate_all_pragma"/>
<xsd:element ref="elaborate_body_pragma"/>
<xsd:element ref="export_pragma"/>
<xsd:element ref="import_pragma"/>
<xsd:element ref="inline_pragma"/>
<xsd:element ref="inspection_point_pragma"/>
<xsd:element ref="interrupt_handler_pragma"/>
<xsd:element ref="interrupt_priority_pragma"/>
<xsd:element ref="linker_options_pragma"/>
<xsd:element ref="list_pragma"/>
<xsd:element ref="locking_policy_pragma"/>
<xsd:element ref="normalize_scalars_pragma"/>
<xsd:element ref="optimize_pragma"/>
<xsd:element ref="pack_pragma"/>
<xsd:element ref="page_pragma"/>
<xsd:element ref="preelaborate_pragma"/>
<xsd:element ref="priority_pragma"/>
<xsd:element ref="pure_pragma"/>
<xsd:element ref="queuing_policy_pragma"/>
<xsd:element ref="remote_call_interface_pragma"/>
<xsd:element ref="remote_types_pragma"/>
<xsd:element ref="restrictions_pragma"/>
<xsd:element ref="reviewable_pragma"/>
<xsd:element ref="shared_passive_pragma"/>
<xsd:element ref="storage_size_pragma"/>
<xsd:element ref="suppress_pragma"/>
<xsd:element ref="task_dispatching_policy_pragma"/>
<xsd:element ref="volatile_pragma"/>
<xsd:element ref="volatile_components_pragma"/>
<xsd:element ref="assert_pragma"/>
<xsd:element ref="assertion_policy_pragma"/>
<xsd:element ref="detect_blocking_pragma"/>
<xsd:element ref="no_return_pragma"/>
<xsd:element ref="partition_elaboration_policy_pragma"/>
<xsd:element ref="preelaborable_initialization_pragma"/>
<xsd:element ref="priority_specific_dispatching_pragma"/>
<xsd:element ref="profile_pragma"/>
<xsd:element ref="relative_deadline_pragma"/>
<xsd:element ref="unchecked_union_pragma"/>
<xsd:element ref="unsuppress_pragma"/>
<xsd:element ref="default_storage_pool_pragma"/>
<xsd:element ref="dispatching_domain_pragma"/>
<xsd:element ref="cpu_pragma"/>
<xsd:element ref="independent_pragma"/>
<xsd:element ref="independent_components_pragma"/>
<xsd:element ref="implementation_defined_pragma"/>
<xsd:element ref="unknown_pragma"/>
</xsd:choice>
</xsd:group>
<!-- ================================================================ -->
<!-- List Types -->
<xsd:complexType name="Element_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="defining_identifier"/>
<xsd:element ref="defining_character_literal"/>
<xsd:element ref="defining_enumeration_literal"/>
<xsd:element ref="defining_and_operator"/>
<xsd:element ref="defining_or_operator"/>
<xsd:element ref="defining_xor_operator"/>
<xsd:element ref="defining_equal_operator"/>
<xsd:element ref="defining_not_equal_operator"/>
<xsd:element ref="defining_less_than_operator"/>
<xsd:element ref="defining_less_than_or_equal_operator"/>
<xsd:element ref="defining_greater_than_operator"/>
<xsd:element ref="defining_greater_than_or_equal_operator"/>
<xsd:element ref="defining_plus_operator"/>
<xsd:element ref="defining_minus_operator"/>
<xsd:element ref="defining_concatenate_operator"/>
<xsd:element ref="defining_unary_plus_operator"/>
<xsd:element ref="defining_unary_minus_operator"/>
<xsd:element ref="defining_multiply_operator"/>
<xsd:element ref="defining_divide_operator"/>
<xsd:element ref="defining_mod_operator"/>
<xsd:element ref="defining_rem_operator"/>
<xsd:element ref="defining_exponentiate_operator"/>
<xsd:element ref="defining_abs_operator"/>
<xsd:element ref="defining_not_operator"/>
<xsd:element ref="defining_expanded_name"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:element ref="derived_type_definition"/>
<xsd:element ref="derived_record_extension_definition"/>
<xsd:element ref="enumeration_type_definition"/>
<xsd:element ref="signed_integer_type_definition"/>
<xsd:element ref="modular_type_definition"/>
<xsd:element ref="root_integer_definition"/>
<xsd:element ref="root_real_definition"/>
<xsd:element ref="universal_integer_definition"/>
<xsd:element ref="universal_real_definition"/>
<xsd:element ref="universal_fixed_definition"/>
<xsd:element ref="floating_point_definition"/>
<xsd:element ref="ordinary_fixed_point_definition"/>
<xsd:element ref="decimal_fixed_point_definition"/>
<xsd:element ref="unconstrained_array_definition"/>
<xsd:element ref="constrained_array_definition"/>
<xsd:element ref="record_type_definition"/>
<xsd:element ref="tagged_record_type_definition"/>
<xsd:element ref="ordinary_interface"/>
<xsd:element ref="limited_interface"/>
<xsd:element ref="task_interface"/>
<xsd:element ref="protected_interface"/>
<xsd:element ref="synchronized_interface"/>
<xsd:element ref="pool_specific_access_to_variable"/>
<xsd:element ref="access_to_variable"/>
<xsd:element ref="access_to_constant"/>
<xsd:element ref="access_to_procedure"/>
<xsd:element ref="access_to_protected_procedure"/>
<xsd:element ref="access_to_function"/>
<xsd:element ref="access_to_protected_function"/>
<xsd:element ref="subtype_indication"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:element ref="digits_constraint"/>
<xsd:element ref="delta_constraint"/>
<xsd:element ref="index_constraint"/>
<xsd:element ref="discriminant_constraint"/>
<xsd:element ref="component_definition"/>
<xsd:element ref="discrete_subtype_indication_as_subtype_definition"/>
<xsd:element ref="discrete_range_attribute_reference_as_subtype_definition"/>
<xsd:element ref="discrete_simple_expression_range_as_subtype_definition"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="unknown_discriminant_part"/>
<xsd:element ref="known_discriminant_part"/>
<xsd:element ref="record_definition"/>
<xsd:element ref="null_record_definition"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="variant"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="anonymous_access_to_variable"/>
<xsd:element ref="anonymous_access_to_constant"/>
<xsd:element ref="anonymous_access_to_procedure"/>
<xsd:element ref="anonymous_access_to_protected_procedure"/>
<xsd:element ref="anonymous_access_to_function"/>
<xsd:element ref="anonymous_access_to_protected_function"/>
<xsd:element ref="private_type_definition"/>
<xsd:element ref="tagged_private_type_definition"/>
<xsd:element ref="private_extension_definition"/>
<xsd:element ref="task_definition"/>
<xsd:element ref="protected_definition"/>
<xsd:element ref="formal_private_type_definition"/>
<xsd:element ref="formal_tagged_private_type_definition"/>
<xsd:element ref="formal_derived_type_definition"/>
<xsd:element ref="formal_discrete_type_definition"/>
<xsd:element ref="formal_signed_integer_type_definition"/>
<xsd:element ref="formal_modular_type_definition"/>
<xsd:element ref="formal_floating_point_definition"/>
<xsd:element ref="formal_ordinary_fixed_point_definition"/>
<xsd:element ref="formal_decimal_fixed_point_definition"/>
<xsd:element ref="formal_ordinary_interface"/>
<xsd:element ref="formal_limited_interface"/>
<xsd:element ref="formal_task_interface"/>
<xsd:element ref="formal_protected_interface"/>
<xsd:element ref="formal_synchronized_interface"/>
<xsd:element ref="formal_unconstrained_array_definition"/>
<xsd:element ref="formal_constrained_array_definition"/>
<xsd:element ref="formal_pool_specific_access_to_variable"/>
<xsd:element ref="formal_access_to_variable"/>
<xsd:element ref="formal_access_to_constant"/>
<xsd:element ref="formal_access_to_procedure"/>
<xsd:element ref="formal_access_to_protected_procedure"/>
<xsd:element ref="formal_access_to_function"/>
<xsd:element ref="formal_access_to_protected_function"/>
<xsd:element ref="aspect_specification"/>
<xsd:element ref="box_expression"/>
<xsd:element ref="integer_literal"/>
<xsd:element ref="real_literal"/>
<xsd:element ref="string_literal"/>
<xsd:element ref="identifier"/>
<xsd:element ref="and_operator"/>
<xsd:element ref="or_operator"/>
<xsd:element ref="xor_operator"/>
<xsd:element ref="equal_operator"/>
<xsd:element ref="not_equal_operator"/>
<xsd:element ref="less_than_operator"/>
<xsd:element ref="less_than_or_equal_operator"/>
<xsd:element ref="greater_than_operator"/>
<xsd:element ref="greater_than_or_equal_operator"/>
<xsd:element ref="plus_operator"/>
<xsd:element ref="minus_operator"/>
<xsd:element ref="concatenate_operator"/>
<xsd:element ref="unary_plus_operator"/>
<xsd:element ref="unary_minus_operator"/>
<xsd:element ref="multiply_operator"/>
<xsd:element ref="divide_operator"/>
<xsd:element ref="mod_operator"/>
<xsd:element ref="rem_operator"/>
<xsd:element ref="exponentiate_operator"/>
<xsd:element ref="abs_operator"/>
<xsd:element ref="not_operator"/>
<xsd:element ref="character_literal"/>
<xsd:element ref="enumeration_literal"/>
<xsd:element ref="explicit_dereference"/>
<xsd:element ref="function_call"/>
<xsd:element ref="indexed_component"/>
<xsd:element ref="slice"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="access_attribute"/>
<xsd:element ref="address_attribute"/>
<xsd:element ref="adjacent_attribute"/>
<xsd:element ref="aft_attribute"/>
<xsd:element ref="alignment_attribute"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="bit_order_attribute"/>
<xsd:element ref="body_version_attribute"/>
<xsd:element ref="callable_attribute"/>
<xsd:element ref="caller_attribute"/>
<xsd:element ref="ceiling_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:element ref="component_size_attribute"/>
<xsd:element ref="compose_attribute"/>
<xsd:element ref="constrained_attribute"/>
<xsd:element ref="copy_sign_attribute"/>
<xsd:element ref="count_attribute"/>
<xsd:element ref="definite_attribute"/>
<xsd:element ref="delta_attribute"/>
<xsd:element ref="denorm_attribute"/>
<xsd:element ref="digits_attribute"/>
<xsd:element ref="exponent_attribute"/>
<xsd:element ref="external_tag_attribute"/>
<xsd:element ref="first_attribute"/>
<xsd:element ref="first_bit_attribute"/>
<xsd:element ref="floor_attribute"/>
<xsd:element ref="fore_attribute"/>
<xsd:element ref="fraction_attribute"/>
<xsd:element ref="identity_attribute"/>
<xsd:element ref="image_attribute"/>
<xsd:element ref="input_attribute"/>
<xsd:element ref="last_attribute"/>
<xsd:element ref="last_bit_attribute"/>
<xsd:element ref="leading_part_attribute"/>
<xsd:element ref="length_attribute"/>
<xsd:element ref="machine_attribute"/>
<xsd:element ref="machine_emax_attribute"/>
<xsd:element ref="machine_emin_attribute"/>
<xsd:element ref="machine_mantissa_attribute"/>
<xsd:element ref="machine_overflows_attribute"/>
<xsd:element ref="machine_radix_attribute"/>
<xsd:element ref="machine_rounds_attribute"/>
<xsd:element ref="max_attribute"/>
<xsd:element ref="max_size_in_storage_elements_attribute"/>
<xsd:element ref="min_attribute"/>
<xsd:element ref="model_attribute"/>
<xsd:element ref="model_emin_attribute"/>
<xsd:element ref="model_epsilon_attribute"/>
<xsd:element ref="model_mantissa_attribute"/>
<xsd:element ref="model_small_attribute"/>
<xsd:element ref="modulus_attribute"/>
<xsd:element ref="output_attribute"/>
<xsd:element ref="partition_id_attribute"/>
<xsd:element ref="pos_attribute"/>
<xsd:element ref="position_attribute"/>
<xsd:element ref="pred_attribute"/>
<xsd:element ref="range_attribute"/>
<xsd:element ref="read_attribute"/>
<xsd:element ref="remainder_attribute"/>
<xsd:element ref="round_attribute"/>
<xsd:element ref="rounding_attribute"/>
<xsd:element ref="safe_first_attribute"/>
<xsd:element ref="safe_last_attribute"/>
<xsd:element ref="scale_attribute"/>
<xsd:element ref="scaling_attribute"/>
<xsd:element ref="signed_zeros_attribute"/>
<xsd:element ref="size_attribute"/>
<xsd:element ref="small_attribute"/>
<xsd:element ref="storage_pool_attribute"/>
<xsd:element ref="storage_size_attribute"/>
<xsd:element ref="succ_attribute"/>
<xsd:element ref="tag_attribute"/>
<xsd:element ref="terminated_attribute"/>
<xsd:element ref="truncation_attribute"/>
<xsd:element ref="unbiased_rounding_attribute"/>
<xsd:element ref="unchecked_access_attribute"/>
<xsd:element ref="val_attribute"/>
<xsd:element ref="valid_attribute"/>
<xsd:element ref="value_attribute"/>
<xsd:element ref="version_attribute"/>
<xsd:element ref="wide_image_attribute"/>
<xsd:element ref="wide_value_attribute"/>
<xsd:element ref="wide_width_attribute"/>
<xsd:element ref="width_attribute"/>
<xsd:element ref="write_attribute"/>
<xsd:element ref="machine_rounding_attribute"/>
<xsd:element ref="mod_attribute"/>
<xsd:element ref="priority_attribute"/>
<xsd:element ref="stream_size_attribute"/>
<xsd:element ref="wide_wide_image_attribute"/>
<xsd:element ref="wide_wide_value_attribute"/>
<xsd:element ref="wide_wide_width_attribute"/>
<xsd:element ref="max_alignment_for_allocation_attribute"/>
<xsd:element ref="overlaps_storage_attribute"/>
<xsd:element ref="implementation_defined_attribute"/>
<xsd:element ref="unknown_attribute"/>
<xsd:element ref="record_aggregate"/>
<xsd:element ref="extension_aggregate"/>
<xsd:element ref="positional_array_aggregate"/>
<xsd:element ref="named_array_aggregate"/>
<xsd:element ref="and_then_short_circuit"/>
<xsd:element ref="or_else_short_circuit"/>
<xsd:element ref="in_membership_test"/>
<xsd:element ref="not_in_membership_test"/>
<xsd:element ref="null_literal"/>
<xsd:element ref="parenthesized_expression"/>
<xsd:element ref="raise_expression"/>
<xsd:element ref="type_conversion"/>
<xsd:element ref="qualified_expression"/>
<xsd:element ref="allocation_from_subtype"/>
<xsd:element ref="allocation_from_qualified_expression"/>
<xsd:element ref="case_expression"/>
<xsd:element ref="if_expression"/>
<xsd:element ref="for_all_quantified_expression"/>
<xsd:element ref="for_some_quantified_expression"/>
<xsd:element ref="pragma_argument_association"/>
<xsd:element ref="discriminant_association"/>
<xsd:element ref="record_component_association"/>
<xsd:element ref="array_component_association"/>
<xsd:element ref="parameter_association"/>
<xsd:element ref="generic_association"/>
<xsd:element ref="null_statement"/>
<xsd:element ref="assignment_statement"/>
<xsd:element ref="if_statement"/>
<xsd:element ref="case_statement"/>
<xsd:element ref="loop_statement"/>
<xsd:element ref="while_loop_statement"/>
<xsd:element ref="for_loop_statement"/>
<xsd:element ref="block_statement"/>
<xsd:element ref="exit_statement"/>
<xsd:element ref="goto_statement"/>
<xsd:element ref="procedure_call_statement"/>
<xsd:element ref="return_statement"/>
<xsd:element ref="extended_return_statement"/>
<xsd:element ref="accept_statement"/>
<xsd:element ref="entry_call_statement"/>
<xsd:element ref="requeue_statement"/>
<xsd:element ref="requeue_statement_with_abort"/>
<xsd:element ref="delay_until_statement"/>
<xsd:element ref="delay_relative_statement"/>
<xsd:element ref="terminate_alternative_statement"/>
<xsd:element ref="selective_accept_statement"/>
<xsd:element ref="timed_entry_call_statement"/>
<xsd:element ref="conditional_entry_call_statement"/>
<xsd:element ref="asynchronous_select_statement"/>
<xsd:element ref="abort_statement"/>
<xsd:element ref="raise_statement"/>
<xsd:element ref="code_statement"/>
<xsd:element ref="if_path"/>
<xsd:element ref="elsif_path"/>
<xsd:element ref="else_path"/>
<xsd:element ref="case_path"/>
<xsd:element ref="select_path"/>
<xsd:element ref="or_path"/>
<xsd:element ref="then_abort_path"/>
<xsd:element ref="case_expression_path"/>
<xsd:element ref="if_expression_path"/>
<xsd:element ref="elsif_expression_path"/>
<xsd:element ref="else_expression_path"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:element ref="enumeration_representation_clause"/>
<xsd:element ref="record_representation_clause"/>
<xsd:element ref="at_clause"/>
<xsd:element ref="component_clause"/>
<xsd:element ref="exception_handler"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Association_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="pragma_argument_association"/>
<xsd:element ref="discriminant_association"/>
<xsd:element ref="record_component_association"/>
<xsd:element ref="array_component_association"/>
<xsd:element ref="parameter_association"/>
<xsd:element ref="generic_association"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Component_Clause_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="component_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Context_Clause_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Declaration_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Declarative_Item_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="ordinary_type_declaration"/>
<xsd:element ref="task_type_declaration"/>
<xsd:element ref="protected_type_declaration"/>
<xsd:element ref="incomplete_type_declaration"/>
<xsd:element ref="tagged_incomplete_type_declaration"/>
<xsd:element ref="private_type_declaration"/>
<xsd:element ref="private_extension_declaration"/>
<xsd:element ref="subtype_declaration"/>
<xsd:element ref="variable_declaration"/>
<xsd:element ref="constant_declaration"/>
<xsd:element ref="deferred_constant_declaration"/>
<xsd:element ref="single_task_declaration"/>
<xsd:element ref="single_protected_declaration"/>
<xsd:element ref="integer_number_declaration"/>
<xsd:element ref="real_number_declaration"/>
<xsd:element ref="enumeration_literal_specification"/>
<xsd:element ref="discriminant_specification"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="loop_parameter_specification"/>
<xsd:element ref="generalized_iterator_specification"/>
<xsd:element ref="element_iterator_specification"/>
<xsd:element ref="procedure_declaration"/>
<xsd:element ref="function_declaration"/>
<xsd:element ref="parameter_specification"/>
<xsd:element ref="procedure_body_declaration"/>
<xsd:element ref="function_body_declaration"/>
<xsd:element ref="return_variable_specification"/>
<xsd:element ref="return_constant_specification"/>
<xsd:element ref="null_procedure_declaration"/>
<xsd:element ref="expression_function_declaration"/>
<xsd:element ref="package_declaration"/>
<xsd:element ref="package_body_declaration"/>
<xsd:element ref="object_renaming_declaration"/>
<xsd:element ref="exception_renaming_declaration"/>
<xsd:element ref="package_renaming_declaration"/>
<xsd:element ref="procedure_renaming_declaration"/>
<xsd:element ref="function_renaming_declaration"/>
<xsd:element ref="generic_package_renaming_declaration"/>
<xsd:element ref="generic_procedure_renaming_declaration"/>
<xsd:element ref="generic_function_renaming_declaration"/>
<xsd:element ref="task_body_declaration"/>
<xsd:element ref="protected_body_declaration"/>
<xsd:element ref="entry_declaration"/>
<xsd:element ref="entry_body_declaration"/>
<xsd:element ref="entry_index_specification"/>
<xsd:element ref="procedure_body_stub"/>
<xsd:element ref="function_body_stub"/>
<xsd:element ref="package_body_stub"/>
<xsd:element ref="task_body_stub"/>
<xsd:element ref="protected_body_stub"/>
<xsd:element ref="exception_declaration"/>
<xsd:element ref="choice_parameter_specification"/>
<xsd:element ref="generic_procedure_declaration"/>
<xsd:element ref="generic_function_declaration"/>
<xsd:element ref="generic_package_declaration"/>
<xsd:element ref="package_instantiation"/>
<xsd:element ref="procedure_instantiation"/>
<xsd:element ref="function_instantiation"/>
<xsd:element ref="formal_object_declaration"/>
<xsd:element ref="formal_type_declaration"/>
<xsd:element ref="formal_incomplete_type_declaration"/>
<xsd:element ref="formal_procedure_declaration"/>
<xsd:element ref="formal_function_declaration"/>
<xsd:element ref="formal_package_declaration"/>
<xsd:element ref="formal_package_declaration_with_box"/>
<xsd:element ref="use_package_clause"/>
<xsd:element ref="use_type_clause"/>
<xsd:element ref="use_all_type_clause"/>
<xsd:element ref="with_clause"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:element ref="enumeration_representation_clause"/>
<xsd:element ref="record_representation_clause"/>
<xsd:element ref="at_clause"/>
<xsd:element ref="component_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Definition_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="derived_type_definition"/>
<xsd:element ref="derived_record_extension_definition"/>
<xsd:element ref="enumeration_type_definition"/>
<xsd:element ref="signed_integer_type_definition"/>
<xsd:element ref="modular_type_definition"/>
<xsd:element ref="root_integer_definition"/>
<xsd:element ref="root_real_definition"/>
<xsd:element ref="universal_integer_definition"/>
<xsd:element ref="universal_real_definition"/>
<xsd:element ref="universal_fixed_definition"/>
<xsd:element ref="floating_point_definition"/>
<xsd:element ref="ordinary_fixed_point_definition"/>
<xsd:element ref="decimal_fixed_point_definition"/>
<xsd:element ref="unconstrained_array_definition"/>
<xsd:element ref="constrained_array_definition"/>
<xsd:element ref="record_type_definition"/>
<xsd:element ref="tagged_record_type_definition"/>
<xsd:element ref="ordinary_interface"/>
<xsd:element ref="limited_interface"/>
<xsd:element ref="task_interface"/>
<xsd:element ref="protected_interface"/>
<xsd:element ref="synchronized_interface"/>
<xsd:element ref="pool_specific_access_to_variable"/>
<xsd:element ref="access_to_variable"/>
<xsd:element ref="access_to_constant"/>
<xsd:element ref="access_to_procedure"/>
<xsd:element ref="access_to_protected_procedure"/>
<xsd:element ref="access_to_function"/>
<xsd:element ref="access_to_protected_function"/>
<xsd:element ref="subtype_indication"/>
<xsd:element ref="range_attribute_reference"/>
<xsd:element ref="simple_expression_range"/>
<xsd:element ref="digits_constraint"/>
<xsd:element ref="delta_constraint"/>
<xsd:element ref="index_constraint"/>
<xsd:element ref="discriminant_constraint"/>
<xsd:element ref="component_definition"/>
<xsd:element ref="discrete_subtype_indication_as_subtype_definition"/>
<xsd:element ref="discrete_range_attribute_reference_as_subtype_definition"/>
<xsd:element ref="discrete_simple_expression_range_as_subtype_definition"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="unknown_discriminant_part"/>
<xsd:element ref="known_discriminant_part"/>
<xsd:element ref="record_definition"/>
<xsd:element ref="null_record_definition"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="variant"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="anonymous_access_to_variable"/>
<xsd:element ref="anonymous_access_to_constant"/>
<xsd:element ref="anonymous_access_to_procedure"/>
<xsd:element ref="anonymous_access_to_protected_procedure"/>
<xsd:element ref="anonymous_access_to_function"/>
<xsd:element ref="anonymous_access_to_protected_function"/>
<xsd:element ref="private_type_definition"/>
<xsd:element ref="tagged_private_type_definition"/>
<xsd:element ref="private_extension_definition"/>
<xsd:element ref="task_definition"/>
<xsd:element ref="protected_definition"/>
<xsd:element ref="formal_private_type_definition"/>
<xsd:element ref="formal_tagged_private_type_definition"/>
<xsd:element ref="formal_derived_type_definition"/>
<xsd:element ref="formal_discrete_type_definition"/>
<xsd:element ref="formal_signed_integer_type_definition"/>
<xsd:element ref="formal_modular_type_definition"/>
<xsd:element ref="formal_floating_point_definition"/>
<xsd:element ref="formal_ordinary_fixed_point_definition"/>
<xsd:element ref="formal_decimal_fixed_point_definition"/>
<xsd:element ref="formal_ordinary_interface"/>
<xsd:element ref="formal_limited_interface"/>
<xsd:element ref="formal_task_interface"/>
<xsd:element ref="formal_protected_interface"/>
<xsd:element ref="formal_synchronized_interface"/>
<xsd:element ref="formal_unconstrained_array_definition"/>
<xsd:element ref="formal_constrained_array_definition"/>
<xsd:element ref="formal_pool_specific_access_to_variable"/>
<xsd:element ref="formal_access_to_variable"/>
<xsd:element ref="formal_access_to_constant"/>
<xsd:element ref="formal_access_to_procedure"/>
<xsd:element ref="formal_access_to_protected_procedure"/>
<xsd:element ref="formal_access_to_function"/>
<xsd:element ref="formal_access_to_protected_function"/>
<xsd:element ref="aspect_specification"/>
<xsd:element ref="identifier"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Discrete_Range_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discrete_subtype_indication"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Discriminant_Association_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discriminant_association"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Discriminant_Specification_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discriminant_specification"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Defining_Name_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="defining_identifier"/>
<xsd:element ref="defining_character_literal"/>
<xsd:element ref="defining_enumeration_literal"/>
<xsd:element ref="defining_and_operator"/>
<xsd:element ref="defining_or_operator"/>
<xsd:element ref="defining_xor_operator"/>
<xsd:element ref="defining_equal_operator"/>
<xsd:element ref="defining_not_equal_operator"/>
<xsd:element ref="defining_less_than_operator"/>
<xsd:element ref="defining_less_than_or_equal_operator"/>
<xsd:element ref="defining_greater_than_operator"/>
<xsd:element ref="defining_greater_than_or_equal_operator"/>
<xsd:element ref="defining_plus_operator"/>
<xsd:element ref="defining_minus_operator"/>
<xsd:element ref="defining_concatenate_operator"/>
<xsd:element ref="defining_unary_plus_operator"/>
<xsd:element ref="defining_unary_minus_operator"/>
<xsd:element ref="defining_multiply_operator"/>
<xsd:element ref="defining_divide_operator"/>
<xsd:element ref="defining_mod_operator"/>
<xsd:element ref="defining_rem_operator"/>
<xsd:element ref="defining_exponentiate_operator"/>
<xsd:element ref="defining_abs_operator"/>
<xsd:element ref="defining_not_operator"/>
<xsd:element ref="defining_expanded_name"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Exception_Handler_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="exception_handler"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Expression_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="discrete_range_attribute_reference"/>
<xsd:element ref="discrete_simple_expression_range"/>
<xsd:element ref="others_choice"/>
<xsd:element ref="box_expression"/>
<xsd:element ref="integer_literal"/>
<xsd:element ref="real_literal"/>
<xsd:element ref="string_literal"/>
<xsd:element ref="identifier"/>
<xsd:element ref="and_operator"/>
<xsd:element ref="or_operator"/>
<xsd:element ref="xor_operator"/>
<xsd:element ref="equal_operator"/>
<xsd:element ref="not_equal_operator"/>
<xsd:element ref="less_than_operator"/>
<xsd:element ref="less_than_or_equal_operator"/>
<xsd:element ref="greater_than_operator"/>
<xsd:element ref="greater_than_or_equal_operator"/>
<xsd:element ref="plus_operator"/>
<xsd:element ref="minus_operator"/>
<xsd:element ref="concatenate_operator"/>
<xsd:element ref="unary_plus_operator"/>
<xsd:element ref="unary_minus_operator"/>
<xsd:element ref="multiply_operator"/>
<xsd:element ref="divide_operator"/>
<xsd:element ref="mod_operator"/>
<xsd:element ref="rem_operator"/>
<xsd:element ref="exponentiate_operator"/>
<xsd:element ref="abs_operator"/>
<xsd:element ref="not_operator"/>
<xsd:element ref="character_literal"/>
<xsd:element ref="enumeration_literal"/>
<xsd:element ref="explicit_dereference"/>
<xsd:element ref="function_call"/>
<xsd:element ref="indexed_component"/>
<xsd:element ref="slice"/>
<xsd:element ref="selected_component"/>
<xsd:element ref="access_attribute"/>
<xsd:element ref="address_attribute"/>
<xsd:element ref="adjacent_attribute"/>
<xsd:element ref="aft_attribute"/>
<xsd:element ref="alignment_attribute"/>
<xsd:element ref="base_attribute"/>
<xsd:element ref="bit_order_attribute"/>
<xsd:element ref="body_version_attribute"/>
<xsd:element ref="callable_attribute"/>
<xsd:element ref="caller_attribute"/>
<xsd:element ref="ceiling_attribute"/>
<xsd:element ref="class_attribute"/>
<xsd:element ref="component_size_attribute"/>
<xsd:element ref="compose_attribute"/>
<xsd:element ref="constrained_attribute"/>
<xsd:element ref="copy_sign_attribute"/>
<xsd:element ref="count_attribute"/>
<xsd:element ref="definite_attribute"/>
<xsd:element ref="delta_attribute"/>
<xsd:element ref="denorm_attribute"/>
<xsd:element ref="digits_attribute"/>
<xsd:element ref="exponent_attribute"/>
<xsd:element ref="external_tag_attribute"/>
<xsd:element ref="first_attribute"/>
<xsd:element ref="first_bit_attribute"/>
<xsd:element ref="floor_attribute"/>
<xsd:element ref="fore_attribute"/>
<xsd:element ref="fraction_attribute"/>
<xsd:element ref="identity_attribute"/>
<xsd:element ref="image_attribute"/>
<xsd:element ref="input_attribute"/>
<xsd:element ref="last_attribute"/>
<xsd:element ref="last_bit_attribute"/>
<xsd:element ref="leading_part_attribute"/>
<xsd:element ref="length_attribute"/>
<xsd:element ref="machine_attribute"/>
<xsd:element ref="machine_emax_attribute"/>
<xsd:element ref="machine_emin_attribute"/>
<xsd:element ref="machine_mantissa_attribute"/>
<xsd:element ref="machine_overflows_attribute"/>
<xsd:element ref="machine_radix_attribute"/>
<xsd:element ref="machine_rounds_attribute"/>
<xsd:element ref="max_attribute"/>
<xsd:element ref="max_size_in_storage_elements_attribute"/>
<xsd:element ref="min_attribute"/>
<xsd:element ref="model_attribute"/>
<xsd:element ref="model_emin_attribute"/>
<xsd:element ref="model_epsilon_attribute"/>
<xsd:element ref="model_mantissa_attribute"/>
<xsd:element ref="model_small_attribute"/>
<xsd:element ref="modulus_attribute"/>
<xsd:element ref="output_attribute"/>
<xsd:element ref="partition_id_attribute"/>
<xsd:element ref="pos_attribute"/>
<xsd:element ref="position_attribute"/>
<xsd:element ref="pred_attribute"/>
<xsd:element ref="range_attribute"/>
<xsd:element ref="read_attribute"/>
<xsd:element ref="remainder_attribute"/>
<xsd:element ref="round_attribute"/>
<xsd:element ref="rounding_attribute"/>
<xsd:element ref="safe_first_attribute"/>
<xsd:element ref="safe_last_attribute"/>
<xsd:element ref="scale_attribute"/>
<xsd:element ref="scaling_attribute"/>
<xsd:element ref="signed_zeros_attribute"/>
<xsd:element ref="size_attribute"/>
<xsd:element ref="small_attribute"/>
<xsd:element ref="storage_pool_attribute"/>
<xsd:element ref="storage_size_attribute"/>
<xsd:element ref="succ_attribute"/>
<xsd:element ref="tag_attribute"/>
<xsd:element ref="terminated_attribute"/>
<xsd:element ref="truncation_attribute"/>
<xsd:element ref="unbiased_rounding_attribute"/>
<xsd:element ref="unchecked_access_attribute"/>
<xsd:element ref="val_attribute"/>
<xsd:element ref="valid_attribute"/>
<xsd:element ref="value_attribute"/>
<xsd:element ref="version_attribute"/>
<xsd:element ref="wide_image_attribute"/>
<xsd:element ref="wide_value_attribute"/>
<xsd:element ref="wide_width_attribute"/>
<xsd:element ref="width_attribute"/>
<xsd:element ref="write_attribute"/>
<xsd:element ref="machine_rounding_attribute"/>
<xsd:element ref="mod_attribute"/>
<xsd:element ref="priority_attribute"/>
<xsd:element ref="stream_size_attribute"/>
<xsd:element ref="wide_wide_image_attribute"/>
<xsd:element ref="wide_wide_value_attribute"/>
<xsd:element ref="wide_wide_width_attribute"/>
<xsd:element ref="max_alignment_for_allocation_attribute"/>
<xsd:element ref="overlaps_storage_attribute"/>
<xsd:element ref="implementation_defined_attribute"/>
<xsd:element ref="unknown_attribute"/>
<xsd:element ref="record_aggregate"/>
<xsd:element ref="extension_aggregate"/>
<xsd:element ref="positional_array_aggregate"/>
<xsd:element ref="named_array_aggregate"/>
<xsd:element ref="and_then_short_circuit"/>
<xsd:element ref="or_else_short_circuit"/>
<xsd:element ref="in_membership_test"/>
<xsd:element ref="not_in_membership_test"/>
<xsd:element ref="null_literal"/>
<xsd:element ref="parenthesized_expression"/>
<xsd:element ref="raise_expression"/>
<xsd:element ref="type_conversion"/>
<xsd:element ref="qualified_expression"/>
<xsd:element ref="allocation_from_subtype"/>
<xsd:element ref="allocation_from_qualified_expression"/>
<xsd:element ref="case_expression"/>
<xsd:element ref="if_expression"/>
<xsd:element ref="for_all_quantified_expression"/>
<xsd:element ref="for_some_quantified_expression"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Name_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="identifier"/>
<xsd:element ref="selected_component"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Parameter_Specification_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="parameter_specification"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Path_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="if_path"/>
<xsd:element ref="elsif_path"/>
<xsd:element ref="else_path"/>
<xsd:element ref="case_path"/>
<xsd:element ref="select_path"/>
<xsd:element ref="or_path"/>
<xsd:element ref="then_abort_path"/>
<xsd:element ref="case_expression_path"/>
<xsd:element ref="if_expression_path"/>
<xsd:element ref="elsif_expression_path"/>
<xsd:element ref="else_expression_path"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Record_Component_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="component_declaration"/>
<xsd:element ref="null_component"/>
<xsd:element ref="variant_part"/>
<xsd:element ref="attribute_definition_clause"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Statement_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="null_statement"/>
<xsd:element ref="assignment_statement"/>
<xsd:element ref="if_statement"/>
<xsd:element ref="case_statement"/>
<xsd:element ref="loop_statement"/>
<xsd:element ref="while_loop_statement"/>
<xsd:element ref="for_loop_statement"/>
<xsd:element ref="block_statement"/>
<xsd:element ref="exit_statement"/>
<xsd:element ref="goto_statement"/>
<xsd:element ref="procedure_call_statement"/>
<xsd:element ref="return_statement"/>
<xsd:element ref="extended_return_statement"/>
<xsd:element ref="accept_statement"/>
<xsd:element ref="entry_call_statement"/>
<xsd:element ref="requeue_statement"/>
<xsd:element ref="requeue_statement_with_abort"/>
<xsd:element ref="delay_until_statement"/>
<xsd:element ref="delay_relative_statement"/>
<xsd:element ref="terminate_alternative_statement"/>
<xsd:element ref="selective_accept_statement"/>
<xsd:element ref="timed_entry_call_statement"/>
<xsd:element ref="conditional_entry_call_statement"/>
<xsd:element ref="asynchronous_select_statement"/>
<xsd:element ref="abort_statement"/>
<xsd:element ref="raise_statement"/>
<xsd:element ref="code_statement"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="Variant_List">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="not_an_element"/>
<xsd:element ref="variant"/>
<xsd:group ref="pragmas_group"/>
</xsd:choice>
</xsd:complexType>
<!-- ================================================================ -->
<!-- Boolean Elements -->
<xsd:element name="aliased" type="Aliased"/>
<xsd:complexType name="Aliased">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="null_exclusion" type="Null_Exclusion"/>
<xsd:complexType name="Null_Exclusion">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="not_null_return" type="Not_Null_Return"/>
<xsd:complexType name="Not_Null_Return">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="reverse" type="Reverse"/>
<xsd:complexType name="Reverse">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="limited" type="Limited"/>
<xsd:complexType name="Limited">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="synchronized" type="Synchronized"/>
<xsd:complexType name="Synchronized">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>
</xsd:sequence>
<xsd:attribute name="checks" type="xsd:string"/>
</xsd:complexType>
<xsd:element name="private" type="Private"/>
<xsd:complexType name="Private">
<xsd:sequence>
<xsd:element name="sloc" type="Source_Location"/>