![]() |
Rosetta
2021.16
|
The ModelGroup covers four XML Schema model groups: xs:sequence, xs:choice, xs:all, and xs:group. A ModelGroup may contain any number of XMLSchemaParticles, interchanging between XMLElements and XMLModelGroups, BUT there are some fairly heavy restrictions on the xs:all model group, marginally enforced by this class and by XMLSchemaComplexType. This class is not exactly a top-level element, in that only xs:group is allowed to appear at the top level, but it is definitely worthwhile for this class to implement the write_definition funciton. More...
#include <XMLSchemaGeneration.hh>

Private Member Functions | |
| void | validate_content () const |
| bool | is_group_holding_all () const |
Private Attributes | |
| XMLSchemaModelGroupType | type_ |
| std::list< XMLSchemaParticleCOP > | particles_ |
| std::string | group_name_ |
The ModelGroup covers four XML Schema model groups: xs:sequence, xs:choice, xs:all, and xs:group. A ModelGroup may contain any number of XMLSchemaParticles, interchanging between XMLElements and XMLModelGroups, BUT there are some fairly heavy restrictions on the xs:all model group, marginally enforced by this class and by XMLSchemaComplexType. This class is not exactly a top-level element, in that only xs:group is allowed to appear at the top level, but it is definitely worthwhile for this class to implement the write_definition funciton.
| utility::tag::XMLSchemaModelGroup::XMLSchemaModelGroup | ( | ) |
|
overridedefault |
| utility::tag::XMLSchemaModelGroup::XMLSchemaModelGroup | ( | XMLSchemaModelGroupType | type | ) |
| utility::tag::XMLSchemaModelGroup::XMLSchemaModelGroup | ( | XMLSchemaModelGroupType | type, |
| std::list< XMLSchemaParticleCOP > const & | particles | ||
| ) |
References validate_content().
| utility::tag::XMLSchemaModelGroup::XMLSchemaModelGroup | ( | std::string const & | group_name | ) |
| XMLSchemaModelGroup & utility::tag::XMLSchemaModelGroup::append_particle | ( | XMLSchemaParticleCOP | particle | ) |
References particles_, and validate_content().
Referenced by utility::tag::define_xml_schema_group().
| XMLSchemaModelGroup & utility::tag::XMLSchemaModelGroup::append_particles | ( | std::list< XMLSchemaParticleCOP > const & | particles | ) |
References particles_, and validate_content().
|
overridevirtual |
Implements utility::tag::XMLSchemaTopLevelElement.
References group_name_.
| XMLSchemaModelGroup & utility::tag::XMLSchemaModelGroup::group_name | ( | std::string const & | name | ) |
References group_name_, name, type_, and utility::tag::xsmgt_group.
Referenced by utility::tag::define_xml_schema_group().
|
private |
References utility::pointer::dynamic_pointer_cast(), particles_, type_, utility::tag::xsmgt_all, and utility::tag::xsmgt_group.
Referenced by write_definition().
|
overridevirtual |
Implements utility::tag::XMLSchemaTopLevelElement.
References particles_.
| XMLSchemaModelGroup & utility::tag::XMLSchemaModelGroup::type | ( | XMLSchemaModelGroupType | type | ) |
References type_, and validate_content().
|
private |
References CREATE_EXCEPTION, utility::pointer::dynamic_pointer_cast(), particles_, type_, utility::tag::xsmgt_all, and utility::tag::xsmgt_group.
Referenced by append_particle(), append_particles(), type(), and XMLSchemaModelGroup().
|
overridevirtual |
Implements utility::tag::XMLSchemaTopLevelElement.
References group_name_, utility::tag::indent_w_spaces(), is_group_holding_all(), utility::tag::XMLSchemaParticle::max_occurs(), utility::tag::XMLSchemaParticle::min_occurs(), particles_, type_, utility::tag::write_min_occurs_max_occurs_if_necessary(), utility::tag::xsmgt_all, utility::tag::xsmgt_choice, utility::tag::xsmgt_group, and utility::tag::xsmgt_sequence.
|
private |
Referenced by element_name(), group_name(), and write_definition().
|
private |
Referenced by append_particle(), append_particles(), is_group_holding_all(), prepare_for_output(), validate_content(), and write_definition().
|
private |
Referenced by group_name(), is_group_holding_all(), type(), validate_content(), and write_definition().
1.8.7