Loading 07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.ttcn_ 0 → 100644 +59 −0 Original line number Diff line number Diff line /*************************************************** ** @author STF 475 ** @version 0.0.1 ** @purpose 9:7.6.2.1, Verify mapping of complex type where both the base and the ** extending types have the compositor sequence. ** @verdict pass accept, ttcn3verdict:pass ***************************************************/ module Pos_07060201_complex_content_derived_by_extension_001 { import from schema_Pos_07060201_complex_content_derived_by_extension_001 language "XSD" all; //template for EXAMPLE1 and following type system shall be generated from xsd file: /*type record E1 { // fields corresponding to attributes of the base and the extending type // (in alphabetical order) XSD.String birthDateAttrGroup optional, XSD.String birthPlaceAttrGroup optional, XSD.Integer genderAttrBase optional, XSD.String jobPositionAttrGroup optional, XSD.String unitOfAge optional, // followed by fields corresponding to elements of the base type XSD.String titleElemBase, XSD.String forenameElemBase, XSD.String surnameElemBase, // finally fields corresponding to the extending element and group reference XSD.Integer ageElemExt, G25seq g25seq } with { variant "name as uncapitalized "; variant (birthDateAttrGroup, birthPlaceAttrGroup, genderAttrBase, jobPositionAttrGroup,unitOfAge) "attribute"; }; type record G25seq { XSD.String familyStatusElemInGroup, XSD.String spouseElemInGroup optional } with { variant "untagged" }*/ template E1 m_msg := { birthDateAttrGroup := omit, birthPlaceAttrGroup := omit, genderAttrBase := omit, jobPositionAttrGroup := omit, unitOfAge := omit, titleElemBase := "titleElemBase", forenameElemBase := "forenameElemBase", surnameElemBase := "surnameElemBase", g25seq :={ familyStatusElemInGroup :="familyStatusElemInGroup", spouseElemInGroup := omit }, ageElemExt := 1 } //#TC } 07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.xml 0 → 100644 +9 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <e1 xmlns="schema:Pos_07060201_complex_content_derived_by_extension_001"> <titleElemBase>titleElemBase</titleElemBase> <forenameElemBase>forenameElemBase</forenameElemBase> <surnameElemBase>surnameElemBase</surnameElemBase> <familyStatusElemInGroup>familyStatusElemInGroup</familyStatusElemInGroup> <ageElemExt>1</ageElemExt> </e1> 07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.xsd 0 → 100644 +41 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="schema:Pos_07060201_complex_content_derived_by_extension_001" xmlns:ns="schema:Pos_07060201_complex_content_derived_by_extension_001"> <complexType name="e25seq"> <sequence> <element name="titleElemBase" type="string"/> <element name="forenameElemBase" type="string"/> <element name="surnameElemBase" type="string"/> </sequence> <attribute name="genderAttrBase" type="integer"/> <attributeGroup ref="ns:g25attr2"/> </complexType> <group name="g25seq"> <sequence> <element name="familyStatusElemInGroup" type="string"/> <element name="spouseElemInGroup" type="string" minOccurs="0"/> </sequence> </group> <attributeGroup name="g25attr1"> <attribute name="birthPlaceAttrGroup" type="string"/> <attribute name="birthDateAttrGroup" type="string"/> </attributeGroup> <attributeGroup name="g25attr2"> <attribute name="jobPositionAttrGroup" type="string"/> </attributeGroup> <!-- Now a type is defined that extends e25seq by adding a new element, group and attributes: --> <complexType name="c1"> <complexContent> <extension base="ns:e25seq"> <sequence> <element name="ageElemExt" type="integer"/> <group ref="ns:g25seq"/> </sequence> <attribute name="unitOfAge" type="string"/> <attributeGroup ref="ns:g25attr1"/> </extension> </complexContent> </complexType> <element name="e1" type="ns:c1"/> </schema> No newline at end of file 07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_002/Pos_07060201_complex_content_derived_by_extension_002.ttcn_ 0 → 100644 +54 −0 Original line number Diff line number Diff line /*************************************************** ** @author STF 475 ** @version 0.0.1 ** @purpose 9:7.6.2.1, Verify mapping of complex type where both the base and the ** extending types have the compositor sequence and multiple occurrences ** are allowed. ** @verdict pass accept, ttcn3verdict:pass ***************************************************/ module Pos_07060201_complex_content_derived_by_extension_002 { import from schema_Pos_07060201_complex_content_derived_by_extension_002 language "XSD" all; // template for EXAMPLE 2: type element e26seqReccurrence and one value of sequence_list // and following type system shall be generated from xsd file: /* type record E1 { // fields corresponding to attributes of the base and the extending type // (in alphabetical order) XSD.Integer genderAttrBase optional, XSD.String jobPositionAttrGroup optional, XSD.String unitOfAge optional, // followed by a "simple" field list corresponding to elements of the base type XSD.String titleElemBase, XSD.String forenameElemBase, XSD.String surnameElemBase, // the extending sequence is recurring (see clause 7.6.6.6 for the mapping) record of record { G25seq g25seq XSD.Integer ageElemExt, } sequence_list } with { variant "name as uncapitalized"; variant(sequence_list) "untagged"; variant (genderAttrBase, jobPositionAttrGroup, unitOfAge) "attribute" */ template E1 m_msg := { genderAttrBase := omit, jobPositionAttrGroup := omit, unitOfAge := omit, titleElemBase := "titleElemBase", forenameElemBase := "forenameElemBase", surnameElemBase := "surnameElemBase", sequence_list := {{ g25seq :={ familyStatusElemInGroup :="familyStatusElemInGroup", spouseElemInGroup := omit }, ageElemExt := 1 }} } //#TC } 07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_002/Pos_07060201_complex_content_derived_by_extension_002.xml 0 → 100644 +9 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <e1 xmlns="schema:Pos_07060201_complex_content_derived_by_extension_002"> <titleElemBase>titleElemBase</titleElemBase> <forenameElemBase>forenameElemBase</forenameElemBase> <surnameElemBase>surnameElemBase</surnameElemBase> <familyStatusElemInGroup>familyStatusElemInGroup</familyStatusElemInGroup> <ageElemExt>1</ageElemExt> </e1> No newline at end of file Loading
07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.ttcn_ 0 → 100644 +59 −0 Original line number Diff line number Diff line /*************************************************** ** @author STF 475 ** @version 0.0.1 ** @purpose 9:7.6.2.1, Verify mapping of complex type where both the base and the ** extending types have the compositor sequence. ** @verdict pass accept, ttcn3verdict:pass ***************************************************/ module Pos_07060201_complex_content_derived_by_extension_001 { import from schema_Pos_07060201_complex_content_derived_by_extension_001 language "XSD" all; //template for EXAMPLE1 and following type system shall be generated from xsd file: /*type record E1 { // fields corresponding to attributes of the base and the extending type // (in alphabetical order) XSD.String birthDateAttrGroup optional, XSD.String birthPlaceAttrGroup optional, XSD.Integer genderAttrBase optional, XSD.String jobPositionAttrGroup optional, XSD.String unitOfAge optional, // followed by fields corresponding to elements of the base type XSD.String titleElemBase, XSD.String forenameElemBase, XSD.String surnameElemBase, // finally fields corresponding to the extending element and group reference XSD.Integer ageElemExt, G25seq g25seq } with { variant "name as uncapitalized "; variant (birthDateAttrGroup, birthPlaceAttrGroup, genderAttrBase, jobPositionAttrGroup,unitOfAge) "attribute"; }; type record G25seq { XSD.String familyStatusElemInGroup, XSD.String spouseElemInGroup optional } with { variant "untagged" }*/ template E1 m_msg := { birthDateAttrGroup := omit, birthPlaceAttrGroup := omit, genderAttrBase := omit, jobPositionAttrGroup := omit, unitOfAge := omit, titleElemBase := "titleElemBase", forenameElemBase := "forenameElemBase", surnameElemBase := "surnameElemBase", g25seq :={ familyStatusElemInGroup :="familyStatusElemInGroup", spouseElemInGroup := omit }, ageElemExt := 1 } //#TC }
07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.xml 0 → 100644 +9 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <e1 xmlns="schema:Pos_07060201_complex_content_derived_by_extension_001"> <titleElemBase>titleElemBase</titleElemBase> <forenameElemBase>forenameElemBase</forenameElemBase> <surnameElemBase>surnameElemBase</surnameElemBase> <familyStatusElemInGroup>familyStatusElemInGroup</familyStatusElemInGroup> <ageElemExt>1</ageElemExt> </e1>
07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_001/Pos_07060201_complex_content_derived_by_extension_001.xsd 0 → 100644 +41 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="schema:Pos_07060201_complex_content_derived_by_extension_001" xmlns:ns="schema:Pos_07060201_complex_content_derived_by_extension_001"> <complexType name="e25seq"> <sequence> <element name="titleElemBase" type="string"/> <element name="forenameElemBase" type="string"/> <element name="surnameElemBase" type="string"/> </sequence> <attribute name="genderAttrBase" type="integer"/> <attributeGroup ref="ns:g25attr2"/> </complexType> <group name="g25seq"> <sequence> <element name="familyStatusElemInGroup" type="string"/> <element name="spouseElemInGroup" type="string" minOccurs="0"/> </sequence> </group> <attributeGroup name="g25attr1"> <attribute name="birthPlaceAttrGroup" type="string"/> <attribute name="birthDateAttrGroup" type="string"/> </attributeGroup> <attributeGroup name="g25attr2"> <attribute name="jobPositionAttrGroup" type="string"/> </attributeGroup> <!-- Now a type is defined that extends e25seq by adding a new element, group and attributes: --> <complexType name="c1"> <complexContent> <extension base="ns:e25seq"> <sequence> <element name="ageElemExt" type="integer"/> <group ref="ns:g25seq"/> </sequence> <attribute name="unitOfAge" type="string"/> <attributeGroup ref="ns:g25attr1"/> </extension> </complexContent> </complexType> <element name="e1" type="ns:c1"/> </schema> No newline at end of file
07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_002/Pos_07060201_complex_content_derived_by_extension_002.ttcn_ 0 → 100644 +54 −0 Original line number Diff line number Diff line /*************************************************** ** @author STF 475 ** @version 0.0.1 ** @purpose 9:7.6.2.1, Verify mapping of complex type where both the base and the ** extending types have the compositor sequence and multiple occurrences ** are allowed. ** @verdict pass accept, ttcn3verdict:pass ***************************************************/ module Pos_07060201_complex_content_derived_by_extension_002 { import from schema_Pos_07060201_complex_content_derived_by_extension_002 language "XSD" all; // template for EXAMPLE 2: type element e26seqReccurrence and one value of sequence_list // and following type system shall be generated from xsd file: /* type record E1 { // fields corresponding to attributes of the base and the extending type // (in alphabetical order) XSD.Integer genderAttrBase optional, XSD.String jobPositionAttrGroup optional, XSD.String unitOfAge optional, // followed by a "simple" field list corresponding to elements of the base type XSD.String titleElemBase, XSD.String forenameElemBase, XSD.String surnameElemBase, // the extending sequence is recurring (see clause 7.6.6.6 for the mapping) record of record { G25seq g25seq XSD.Integer ageElemExt, } sequence_list } with { variant "name as uncapitalized"; variant(sequence_list) "untagged"; variant (genderAttrBase, jobPositionAttrGroup, unitOfAge) "attribute" */ template E1 m_msg := { genderAttrBase := omit, jobPositionAttrGroup := omit, unitOfAge := omit, titleElemBase := "titleElemBase", forenameElemBase := "forenameElemBase", surnameElemBase := "surnameElemBase", sequence_list := {{ g25seq :={ familyStatusElemInGroup :="familyStatusElemInGroup", spouseElemInGroup := omit }, ageElemExt := 1 }} } //#TC }
07_mapping_xsd_components/0706_complextype_components/070602_complextype_containing_complex_content/07060201_complex_content_derived_by_extension/Pos_07060201_complex_content_derived_by_extension_002/Pos_07060201_complex_content_derived_by_extension_002.xml 0 → 100644 +9 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <e1 xmlns="schema:Pos_07060201_complex_content_derived_by_extension_002"> <titleElemBase>titleElemBase</titleElemBase> <forenameElemBase>forenameElemBase</forenameElemBase> <surnameElemBase>surnameElemBase</surnameElemBase> <familyStatusElemInGroup>familyStatusElemInGroup</familyStatusElemInGroup> <ageElemExt>1</ageElemExt> </e1> No newline at end of file