<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:lom="http://ltsc.ieee.org/xsd/LOM" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema"
  elementFormDefault="qualified" attributeFormDefault="qualified">
    <xs:annotation id="version">
      <xs:documentation>Issue number: 7</xs:documentation>
      <xs:documentation>Issue date: 2026-07-16</xs:documentation>
      <xs:documentation>URL: http://www.s1000d.org/S1000D_7/xml_schema_master/complexTypes.xsd</xs:documentation>
      <xs:documentation>Remarks: none</xs:documentation>
    </xs:annotation>
    <xs:annotation id="copyright">
      <xs:documentation>Copyright (C) 2026 by Aerospace, Security and Defence Industries Association of Europe - ASD

Publishers:
 1) Aerospace, Security and Defence Industries Association of Europe
 2) Aerospace Industries Association of America
 3) ATA e-Business Program

Limitations of Liability:
1.  This material is provided 'As Is' and neither ASD nor any person who has contributed to the creation, revision or maintenance of the material makes any representations or warranties, express or implied, including but not limited to, warranties of merchantability or fitness for any particular purpose.
2.  Neither ASD nor any person who has contributed to the creation, revision or maintenance of this material shall be liable for any direct, indirect, special or consequential damages or any other liability arising from any use of this material.
3.  Revisions to this document may occur after its issuance. The user is responsible for determining if revisions to the material contained in this document have occurred and are applicable.

The details for copyright can be found in the S1000D Specification.</xs:documentation>
    </xs:annotation>
  <xs:annotation id="changes_4.2-01">
    <xs:documentation source="2011-009DE R3a">Information name variant; 2017-10-26 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/2011-009DE</xs:documentation>
    <xs:documentation source="2011-020S1 R2">condRefId mandatory in incorporation status; 2017-10-10 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/2011-020S1</xs:documentation>
    <xs:documentation source="2015-012EPWG R1">Delete Elements / Attributes declared but not used; 2017-10-11 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/2015-012EPWG</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_4.2-02">
    <xs:documentation source="2015-026EPWG R5">Preserving White Space with Verbatim Text; 2018-05-22 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/EPWG-2015-0027</xs:documentation>
    <xs:documentation source="2017-013AA R3">Conflicting Usage Instructions for @allowedObjectFlag Attribute; 2018-05-22 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2016-0011</xs:documentation>
    <xs:documentation source="2017-017DE R5">Remove subjectVariantSegment from IPD; 2018-05-23 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/DE-2017-0016</xs:documentation>
    <xs:documentation source="2014-015AA R1">scoEntryItem Possible Error (Lacking ability to Reference a Content Package); 2018-07-11 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2014-0022</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_4.2-03">
    <xs:documentation source="2015-016AA R4">Identification of Regulatory Information; 2018-11-26 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2015-0012</xs:documentation>
    <xs:documentation source="2019-001EPWG R5">Identification of Regulatory Information Addendum; 2019-01-22 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/EPWG-2019-0001</xs:documentation>
    <xs:documentation source="2019-001EPWG R5">Regulatory Information in Front matter, Comment and ICN metadata - Default BREX Changes; 2019-03-13 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/EPWG-2019-0001</xs:documentation>
    <xs:documentation source="2017-026AA R2">Make usableOnCodes Repeatable; 2018-11-26 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2015-0012</xs:documentation>
    <xs:documentation source="2017-030AA R0">To allow Maintenance-Level Filtering without Data Replication; 2018-11-26 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2017-0020</xs:documentation>
    <xs:documentation source="2017-029BRWG R7">brDoc gaps; 2019-02-15 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/BRWG-2017-0029</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_5.0-04">
    <xs:documentation source="2010-011SE R11">Classification of consumables; 2023-05-05 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/SE-2010-0220</xs:documentation>
    <xs:documentation source="2015-033FR R6">Maintenance planning &#x2013; Zone on time limit element; 2022-11-23 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/FR-2015-0036</xs:documentation>
    <xs:documentation source="2015-034FR R6">Maintenance planning &#x2013; Sampling on time limit element; 2022-11-23 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/FR-2015-0037</xs:documentation>
    <xs:documentation source="2015-035FR R7">Maintenance planning &#x2013; Source document on time limit element; 2022-11-23 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/FR-2015-0038</xs:documentation>
    <xs:documentation source="2015-036FR R6">Maintenance planning &#x2013; Threshold with a condition; 2022-12-07 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/FR-2015-0039</xs:documentation>
    <xs:documentation source="2018-008AA R2">"toolAlts" element revised to optional; 2022-11-23 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/AA-2018-0006</xs:documentation>
    <xs:documentation source="2018-006FR R7">dmRef qualification; 2022-11-23 JS URL: https://specring.com/specs/S1000D/SPEC/proposals/view/FR-2018-0005</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_5.0-05">
    <xs:documentation source="EPWG 90.00">Removed xs:choice from pmRefElemType content model per EWPG 90.00 decision; 2023-10-17 JS</xs:documentation>
    <xs:documentation source="2019-010IT R4">Maintenance planning &#x2013; refs on time limits element; 2023-10-19 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/IT-2019-0013</xs:documentation>
    <xs:documentation source="2020-030US R8">Hazardous materials; 2023-10-17 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/US-2020-0024</xs:documentation>
    <xs:documentation source="2022-013PPWG R5">Revise simpleRefPara in reasonForUpdate; 2023-10-18 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/PPWG-2022-0013</xs:documentation>
    <xs:documentation source="2014-017NN R5">Correct the use of warning and cautions in common information; 2023-10-19 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/NN-2014-0024</xs:documentation>
    <xs:documentation source="2020-036US R6">Operational checkout; 2023-10-20 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/US-2020-0031</xs:documentation>
    <xs:documentation source="2022-002NN R5">Reference external publication; 2023-11-10 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/NN-2022-0007</xs:documentation>
    <xs:documentation source="2022-012PPWG R3">Editorial updates for Issue 5.0-05; 20240223 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/PPWG-2022-0014</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_6-01">
    <xs:documentation source="CPF 2020-039EPWG R3">Local Support for XML Namespace in Schema Package; 2025-09-29 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/EPWG-2020-0038</xs:documentation>
    <xs:documentation source="CPF 2020-035US R4">isolationStep_CB_Desc; 2025-09-29 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/US-2020-0034</xs:documentation>
    <xs:documentation source="CPF 2021-005EPWG R3">Harmonize XLink Schema with W3C; 2025-09-30 JS URL https://specring.com/specs/S1000D/SPEC/proposals/view/EPWG-2021-0007</xs:documentation>
  </xs:annotation>
  <xs:annotation id="changes_6-02">
    <xs:documentation source="2025-001US R1">Checklist schema enhancements 20260312 BS</xs:documentation>
    <xs:documentation source="2023-001US R6">The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file.; 20260312 BS </xs:documentation>
  </xs:annotation>
  <!-- CPF 2015-026EPWG R5: added new namespace import statement to XML schema; 20180522 JS -->
  <!-- CPF 2020-039EPWG R3: updated schema location to point to local xml.xsd file; 20250929 JS -->
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" schemaLocation="rdf.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
  <xs:import namespace="http://ltsc.ieee.org/xsd/LOM" schemaLocation="../lom_schema/lom.xsd"/>
  <xs:include schemaLocation="attributeGroups.xsd"/>
  <xs:include schemaLocation="simpleElements.xsd"/>
  <xs:include schemaLocation="complexElements.xsd"/>
  <xs:complexType name="accessFromElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="zoneRef"/>
      <xs:element ref="accessPointRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointAltsElemType">
    <xs:sequence>
      <xs:element ref="accessPoint" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="accessPointType"/>
      <xs:element ref="zoneRef"/>
      <xs:element ref="accessTo" minOccurs="0"/>
      <xs:element ref="accessPointRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="fastener" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="quantity" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="hoursToClose" minOccurs="0"/>
      <xs:element ref="hoursToOpen" minOccurs="0"/>
      <xs:element ref="internalRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="altNumber"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointIdentElemType">
    <xs:attribute ref="accessPointNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="accessPointNumber"/>
    <xs:attribute ref="accessPointTypeValue"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="lsarData"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointRefGroupElemType">
    <xs:sequence>
      <xs:element ref="accessPointRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="accessPointRefType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointRepositoryElemType">
    <xs:sequence>
      <xs:element ref="accessPointSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointSpecElemType">
    <xs:sequence>
      <xs:element ref="accessPointIdent"/>
      <xs:element ref="accessPointRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="accessPointAlts"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessPointTypeElemType">
    <xs:attribute ref="accessPointTypeValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessToElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="otherItems" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessoryElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="orientation" minOccurs="0"/>
      <xs:element ref="assyInstruction" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="accessoryGroupElemType">
    <xs:sequence>
      <xs:element ref="accessory" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="acronymDefinitionElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="acronymElemType">
    <xs:sequence>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="acronymDefinition"/>
    </xs:sequence>
    <xs:attribute ref="acronymType"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="acronymTermElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="internalRefId"/>
  </xs:complexType>
  <xs:complexType name="actionElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="textElemGroup"/>
      <xs:element ref="randomList"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <!-- CPF 2020-036US R6: added support for operational checkout elements; added actionGroupElemType 20231020 JS -->
  <xs:complexType name="actionGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="malfunction"/>
      <xs:element ref="remedyAction"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="addressElemType">
    <xs:sequence>
      <xs:element ref="department" minOccurs="0"/>
      <xs:element ref="street" minOccurs="0"/>
      <xs:element ref="postOfficeBox" minOccurs="0"/>
      <xs:element ref="postalZipCode" minOccurs="0"/>
      <xs:element ref="city"/>
      <xs:element ref="country"/>
      <xs:element ref="state" minOccurs="0"/>
      <xs:element ref="province" minOccurs="0"/>
      <xs:element ref="building" minOccurs="0"/>
      <xs:element ref="room" minOccurs="0"/>
      <xs:element ref="phoneNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="faxNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="email" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="internet" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SITA" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="altIdentElemType">
    <xs:sequence>
      <xs:element ref="partNumber" minOccurs="0"/>
      <xs:element ref="manufacturerCode" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="altIdentGroupElemType">
    <xs:sequence>
      <xs:element ref="altIdent" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="alteredFromPartDescrElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="alteredFromPartElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="partRef" maxOccurs="unbounded"/>
        <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:element ref="alteredFromPartDescr" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="amperageElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="answerElemType">
    <xs:sequence>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="answerToEntry"/>
  </xs:complexType>
  <xs:complexType name="applicCrossRefTableCatalogElemType">
    <xs:sequence>
      <xs:element ref="applicCrossRefTableRef" maxOccurs="unbounded"/>
      <xs:element ref="productDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="applicCrossRefTableElemType">
    <xs:choice>
      <xs:element ref="applicCrossRefTableCatalog"/>
      <xs:sequence>
        <xs:element ref="productAttributeList"/>
        <xs:element ref="condCrossRefTableRef" minOccurs="0"/>
        <xs:element ref="productCrossRefTableRef" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="applicCrossRefTableRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="applicElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="displayText"/>
        <xs:choice minOccurs="0">
          <xs:element ref="assert"/>
          <xs:element ref="evaluate"/>
          <xs:element ref="expression"/>
        </xs:choice>
      </xs:sequence>
      <xs:choice>
        <xs:element ref="assert"/>
        <xs:element ref="evaluate"/>
        <xs:element ref="expression"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="applicConfiguration"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="applicIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="applicRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicIdentValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="applicRefIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="applicRepositoryElemType">
    <xs:sequence>
      <xs:element ref="applicSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="applicSpecElemType">
    <xs:sequence>
      <xs:element ref="applicSpecIdent"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicMapRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="applicSpecIdentElemType">
    <xs:attribute ref="applicIdentValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <!-- CPF 2017-026AA R2: made usableOnCodeEquip and usableOnCodeAssy children of applicabilitySegmentElemType repeatable; 20181126 JS -->
  <xs:complexType name="applicabilitySegmentElemType">
    <xs:sequence>
      <xs:element ref="usableOnCodeEquip" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="usableOnCodeAssy" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="interchangeability" minOccurs="0"/>
      <xs:element ref="restrictedOperationNote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="assertElemType" mixed="true">
    <xs:attribute ref="applicPropertyIdent"/>
    <xs:attribute ref="applicPropertyType"/>
    <xs:attribute ref="applicPropertyValues"/>
    <xs:attribute ref="applicDisplayClass"/>
  </xs:complexType>
  <xs:complexType name="assertionElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="variableRef"/>
        <xs:element ref="globalPropertyRef"/>
      </xs:choice>
      <xs:element ref="expression"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="assignElemType">
    <xs:attribute ref="applicPropertyIdent" use="required"/>
    <xs:attribute ref="applicPropertyType" use="required"/>
    <xs:attribute ref="applicPropertyValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="assocWarningMalfunctionAltsElemType">
    <xs:sequence>
      <xs:element ref="assocWarningMalfunction" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="assocWarningMalfunctionElemType">
    <xs:sequence>
      <xs:element ref="fault"/>
      <xs:sequence minOccurs="0">
        <xs:element ref="dmRef" minOccurs="0"/>
        <xs:element ref="faultDescr" minOccurs="0"/>
        <xs:element ref="detectionInfo" minOccurs="0"/>
      </xs:sequence>
    </xs:sequence>
    <xs:attribute ref="faultPartCategory"/>
    <xs:attribute ref="subCategory"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="associateElemType">
    <xs:sequence>
      <xs:element ref="externalAssert"/>
    </xs:sequence>
    <xs:attribute ref="associationType" use="required"/>
  </xs:complexType>
  <xs:complexType name="assyElemType">
    <xs:sequence>
      <xs:group ref="preparationAndFinishElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="assyInstructionElemType">
    <xs:sequence>
      <xs:element ref="assy" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="attachStoreShipPartElemType">
    <xs:attribute ref="attachStoreShipPartCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attachmentRefElemType">
    <xs:attribute ref="attachmentNumber" use="required"/>
    <xs:attribute ref="fileExtension" use="required"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT4 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="new"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
  </xs:complexType>
  <xs:complexType name="attentionListItemParaElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="attentionText" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attentionRandomListElemType">
    <xs:sequence>
      <xs:element ref="attentionRandomListItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="listItemPrefix"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attentionRandomListItemElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="attentionListItemPara"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attentionSequentialListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="attentionSequentialListItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attentionSequentialListItemElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="attentionListItemPara" minOccurs="0"/>
      <xs:element ref="attentionRandomList" minOccurs="0"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="attenuationElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="authorityExceptionsElemType">
    <xs:sequence>
      <xs:element ref="productConfiguration" minOccurs="0"/>
      <xs:element ref="retrofit" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="authorityInfoAndTpElemType">
    <xs:sequence>
      <xs:element ref="authorityInfo"/>
      <xs:element ref="techPubBase"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="authorizationStatusElemType" mixed="true">
    <xs:attribute ref="authorizationStatusDate"/>
  </xs:complexType>
  <xs:complexType name="barCodeCodeElemType">
    <xs:attribute ref="barCodeValue" use="required"/>
    <xs:attribute ref="barCodeSymbology" use="required"/>
  </xs:complexType>
  <xs:complexType name="barCodeElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="barCodeCode"/>
        <xs:element ref="barCodeSymbol" minOccurs="0"/>
      </xs:sequence>
      <xs:element ref="barCodeSymbol"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="barCodeSymbolElemType">
    <xs:attribute ref="infoEntityIdent" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="reproductionWidth" use="required"/>
    <xs:attribute ref="reproductionHeight" use="required"/>
  </xs:complexType>
  <xs:complexType name="basicCorrelatedFaultsElemType">
    <xs:sequence>
      <xs:sequence minOccurs="0" maxOccurs="unbounded">
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="warningMalfunction" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="warningMalfunctionAlts" minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="assocWarningMalfunction" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="assocWarningMalfunctionAlts" minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
      </xs:sequence>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="bitMessage" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="bitMessageAlts" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="behaviorElemType">
    <xs:attribute ref="linkShow"/>
    <xs:attribute ref="linkActuate"/>
  </xs:complexType>
  <xs:complexType name="bitMessageAltsElemType">
    <xs:sequence>
      <xs:element ref="bitMessage" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="booleanFunctionElemType">
    <xs:attribute ref="booleanAction" use="required"/>
  </xs:complexType>
  <xs:complexType name="booleanOperatorElemType">
    <xs:attribute ref="booleanOperation" use="required"/>
  </xs:complexType>
  <xs:complexType name="booleanValueElemType">
    <xs:choice>
      <xs:element ref="trueValue"/>
      <xs:element ref="falseValue"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="boundaryElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="quantity" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="boundaryFromElemType">
    <xs:sequence>
      <xs:element ref="boundary" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="boundaryToElemType">
    <xs:sequence>
      <xs:element ref="boundary" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brexDmRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="brDecisionRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionIdentNumber"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brexElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="snsRules" minOccurs="0"/>
      <xs:element ref="contextRules" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="nonContextRules" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="defaultBrSeverityLevel"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="businessUnitElemType">
    <xs:sequence>
      <xs:element ref="businessUnitName"/>
      <xs:element ref="businessUnitAddress" minOccurs="0"/>
      <xs:element ref="contactPerson" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="buyerFurnishedEquipFlagElemType">
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="calibrationMarkerElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionBodyElemType">
    <xs:sequence>
      <xs:element ref="captionRow" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="valign" default="top"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionElemType">
    <xs:sequence>
      <xs:element ref="captionLine" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="color"/>
    <xs:attribute ref="captionWidth"/>
    <xs:attribute ref="captionHeight"/>
    <xs:attribute ref="systemIdentCode"/>
    <xs:attribute ref="alignCaption" default="left"/>
    <xs:attribute ref="tableOfContentType"/>
    <xs:attribute ref="captionType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionEntryElemType">
    <xs:choice minOccurs="0">
      <xs:element ref="caption"/>
      <xs:element ref="captionText"/>
    </xs:choice>
    <xs:attribute ref="colname"/>
    <xs:attribute ref="namest"/>
    <xs:attribute ref="nameend"/>
    <xs:attribute ref="spanname"/>
    <xs:attribute ref="morerows"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="valign"/>
    <xs:attribute ref="alignCaptionEntry"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionGroupElemType">
    <xs:sequence>
      <xs:element ref="colspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="spanspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="captionBody"/>
    </xs:sequence>
    <xs:attribute ref="cols" use="required"/>
    <xs:attribute ref="alignCaption" default="left"/>
    <xs:attribute ref="tableOfContentType"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionLineElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="acronymTerm" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="captionRowElemType">
    <xs:sequence>
      <xs:element ref="captionEntry" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="captionTextElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="internalRef"/>
      <xs:element ref="indexFlag"/>
      <xs:element ref="changeInline"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="caseCondElemType" mixed="true">
    <xs:group ref="textElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="caseElemType">
    <xs:sequence>
      <xs:element ref="caseCond"/>
      <xs:group ref="crewDrillStepElemGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="catalogSeqNumberElemType">
    <xs:sequence>
      <xs:choice minOccurs="0">
        <xs:element ref="functionalItemRef" maxOccurs="unbounded"/>
        <xs:element ref="accessPointRef" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:element ref="referTo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="internalRef" minOccurs="0"/>
      <xs:element ref="itemSeqNumber" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="systemCode"/>
    <xs:attribute ref="subSystemCode"/>
    <xs:attribute ref="subSubSystemCode"/>
    <xs:attribute ref="assyCode"/>
    <xs:attribute ref="figureNumber" use="required"/>
    <xs:attribute ref="figureNumberVariant"/>
    <xs:attribute ref="item" use="required"/>
    <xs:attribute ref="itemVariant"/>
    <xs:attribute ref="indenture" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="catalogSeqNumberRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="modelIdentCode"/>
    <xs:attribute ref="systemDiffCode"/>
    <xs:attribute ref="systemCode"/>
    <xs:attribute ref="subSystemCode"/>
    <xs:attribute ref="subSubSystemCode"/>
    <xs:attribute ref="assyCode"/>
    <xs:attribute ref="figureNumber" use="required"/>
    <xs:attribute ref="figureNumberVariant"/>
    <xs:attribute ref="itemLocationCode"/>
    <xs:attribute ref="item" use="required"/>
    <xs:attribute ref="itemVariant"/>
    <xs:attribute ref="itemSeqNumberValue"/>
    <xs:attribute ref="initialProvisioningProjectNumber"/>
    <xs:attribute ref="responsiblePartnerCompanyCode"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT2 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="new"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="categoryOneContainerLocationElemType">
    <xs:attribute ref="modelIdentCode"/>
    <xs:attribute ref="systemDiffCode"/>
    <xs:attribute ref="systemCode"/>
    <xs:attribute ref="subSystemCode"/>
    <xs:attribute ref="subSubSystemCode"/>
    <xs:attribute ref="assyCode"/>
    <xs:attribute ref="figureNumber" use="required"/>
    <xs:attribute ref="figureNumberVariant"/>
    <xs:attribute ref="itemLocationCode"/>
    <xs:attribute ref="item" use="required"/>
    <xs:attribute ref="itemVariant"/>
    <xs:attribute ref="itemSeqNumberValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT2 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="cautionElemType">
    <xs:sequence>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="warningAndCautionPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="cautionType"/>
    <xs:attribute ref="internalRefId"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="cautionIdentElemType">
    <xs:attribute ref="cautionIdentNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="cautionRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="cautionIdentNumber" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="cautionRepositoryElemType">
    <xs:sequence>
      <xs:element ref="cautionSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="cautionSpecElemType">
    <xs:sequence>
      <xs:element ref="cautionIdent"/>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="warningAndCautionPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="challengeAndResponseElemType">
    <xs:sequence>
      <xs:element ref="challenge"/>
      <xs:sequence maxOccurs="unbounded">
        <xs:element ref="crewMemberGroup" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="response"/>
      </xs:sequence>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="challengeElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="changeAuthorityDataElemType">
    <xs:sequence>
      <xs:element ref="changeAuthority"/>
      <xs:element ref="refs" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="condValue"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="changeAuthorityElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attribute ref="condNumber"/>
    <xs:attribute ref="manufacturerCodeValue"/>
    <xs:attribute ref="condTypeName"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="changeInlineElemType" mixed="true">
    <xs:sequence maxOccurs="unbounded">
      <xs:group ref="textElemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListDataElemType">
    <xs:sequence>
      <xs:element ref="simplePara"/>
    </xs:sequence>
    <xs:attribute ref="checkListDataType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListDataGroupElemType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="checkListData"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - deleted mixed="true"; 20260312 BS -->
  <xs:complexType name="checkListElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:element ref="checkListInfo"/>
    </xs:sequence>
    <xs:attribute ref="checkListType"/>
    <xs:attribute ref="checkListCategory"/>
    <xs:attribute ref="worthinessLimit"/>
    <xs:attribute ref="reducedMaint"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attribute ref="skillType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="checkListInfoElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="checkListIntervals" minOccurs="0"/>
      <xs:sequence>
        <xs:group ref="warningAndCautionElemGroup"/>
        <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="checkListItems" maxOccurs="unbounded"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added group ref; 20260312 BS -->
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="fmftElemGroup"/>
    </xs:sequence>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Added attribute ref; 20260312 BS -->
    <xs:attribute ref="checkListInspRqmt"/>
    <xs:attribute ref="worthinessLimit"/>
    <xs:attribute ref="reducedMaint"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attribute ref="skillType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="checkListIntervalElemType" mixed="true">
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="checkListIntervalsElemType">
    <xs:sequence>
      <xs:element ref="checkListInterval" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListItemAltsElemType">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" ref="checkListItem"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListItemDataGroupElemType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="checkListItemData"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListItemDataElemType">
    <xs:sequence>
      <xs:element ref="simplePara"/>
    </xs:sequence>
    <xs:attribute ref="checkListItemDataType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="checkListItemElemType">
    <xs:sequence>
      <xs:element ref="itemNumber" minOccurs="0"/>
      <xs:element ref="threshold" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="taskDuration" minOccurs="0"/>
      <xs:choice minOccurs="0">
        <xs:element ref="equip"/>
        <xs:element ref="name"/>
      </xs:choice>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
      <xs:element minOccurs="0" ref="workArea"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
      <xs:element minOccurs="0" ref="checkListItemDataGroup"/>
      <xs:choice>
        <xs:element ref="refs" minOccurs="0"/>
        <!-- CPF 2025-001US R1: Checklist schema enhancements - Added choice 20260312 BS -->
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="checkListProcedure"/>
          <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
          <xs:element ref="checkListProcedureAlts"/>
        </xs:choice>
      </xs:choice>
      <xs:element ref="zoneRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="checkListItemsElemType">
    <xs:sequence>
      <xs:element ref="zoneRef" minOccurs="0"/>
      <xs:element ref="workArea" minOccurs="0"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added choice 20260312 BS -->
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="checkListItem"/>
        <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
        <xs:element ref="checkListItemAlts"/>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListParaAltsElemType">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" ref="checkListPara"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="checkListParaElemType">
    <xs:sequence>
      <xs:sequence>
        <xs:group ref="warningAndCautionElemGroup"/>
        <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added maxOccurs; 20260312 BS -->
      <xs:element ref="para" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="equipmentNotAvailable" minOccurs="0"/>
        <xs:element ref="remarks" minOccurs="0"/>
      </xs:choice>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added group ref; 20260312 BS -->
      <xs:group ref="fmftElemGroup" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
      <xs:element ref="checkListDataGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="itemCharacteristic"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Added attribute ref; 20260312 BS -->
    <xs:attribute ref="reqPersonsRefs"/>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Deleted attribute crewMemberType; 20260312 BS -->
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType; 20260312 BS -->
  <xs:complexType name="checkListProcedureAltsElemType">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" ref="checkListProcedure"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="checkListProcedureElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Replaced choice; 20260312 BS 
        <xs:choice>
        <xs:element ref="checkListPara"/>
        <xs:element ref="checkListStep" maxOccurs="unbounded"/>
      </xs:choice>
      -->
      <xs:choice>
        <xs:choice>
          <xs:element ref="checkListPara"/>
          <xs:element ref="checkListParaAlts"/>
        </xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="checkListStep"/>
          <xs:element ref="checkListStepAlts"/>
        </xs:choice>
      </xs:choice>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added group ref; 20260312 BS -->
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="fmftElemGroup"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="itemCharacteristic"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Added attribute ref; 20260312 BS -->
    <xs:attribute ref="reqPersonsRefs"/>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Deleted attribute crewMemberType; 20260312 BS -->
    <xs:attribute ref="safeFlight"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2025-001US R1: Checklist schema enhancements - Added complexType ref; 20260312 BS -->
  <xs:complexType name="checkListStepAltsElemType">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" ref="checkListStep"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="checkListStepElemType">
    <xs:sequence>
      <xs:sequence>
        <xs:group ref="warningAndCautionElemGroup"/>
        <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added maxOccurs; 20260312 BS -->
      <xs:element ref="para" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0">
        <!-- CPF 2020-036US R6: added support for operational checkout elements; added indicationGroup to choice 20231020 JS -->
        <xs:element ref="indicationGroup" maxOccurs="unbounded"/>
        <xs:choice minOccurs="0">
          <xs:element ref="equipmentNotAvailable"/>
          <xs:element ref="remarks"/>
        </xs:choice>
      </xs:choice>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added group ref; 20260312 BS -->
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="fmftElemGroup"/>
      <!-- CPF 2025-001US R1: Checklist schema enhancements - Added element ref; 20260312 BS -->
      <xs:element minOccurs="0" ref="checkListDataGroup"/>
      <xs:element ref="checkListStep" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <!-- CPF 2025-001US R1: Checklist schema enhancements - Added attribute ref; 20260312 BS -->
    <xs:attribute ref="reqPersonsRefs"/>
    <xs:attribute ref="itemCharacteristic"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="choiceElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
    </xs:choice>
    <xs:attribute ref="nextActionRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerAltsElemType">
    <xs:sequence>
      <xs:element ref="circuitBreaker" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerClassElemType">
    <xs:attribute ref="circuitBreakerType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerDescrElemType">
    <xs:sequence>
      <xs:element ref="circuitBreakerRef"/>
      <xs:element ref="name"/>
      <xs:choice minOccurs="0">
        <xs:element ref="internalRef"/>
        <xs:element ref="accessPointRef"/>
      </xs:choice>
      <xs:element ref="circuitBreakerLocation" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerDescrGroupElemType">
    <xs:sequence>
      <xs:element ref="circuitBreakerDescrSubGroup" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="circuitBreakerAction"/>
    <xs:attribute ref="checkSum"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerDescrSubGroupElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:sequence>
        <xs:element ref="circuitBreakerDescr" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:sequence>
    <xs:attribute ref="circuitBreakerAction"/>
    <xs:attribute ref="checkSum"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="circuitBreakerClass"/>
      <xs:element ref="location" minOccurs="0"/>
      <xs:element ref="functionalPhysicalAreaRef" minOccurs="0"/>
      <xs:element ref="functionalItemRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="circuitBreakerRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="amperage" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="altNumber"/>
    <xs:attribute ref="monitoredFlag"/>
    <xs:attribute ref="collaredCircuitBreakerFlag"/>
    <xs:attribute ref="provisionedFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerIdentElemType">
    <xs:attribute ref="circuitBreakerNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="installationIdent"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerLocationElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="circuitBreakerNumber" use="required"/>
    <xs:attribute ref="circuitBreakerType"/>
    <xs:attribute ref="circuitBreakerAction"/>
    <xs:attribute ref="checkSum"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="installationIdent"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerRefGroupElemType">
    <xs:sequence>
      <xs:element ref="circuitBreakerRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="circuitBreakerRefType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerRepositoryElemType">
    <xs:sequence>
      <xs:element ref="circuitBreakerSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="circuitBreakerSpecElemType">
    <xs:sequence>
      <xs:element ref="circuitBreakerIdent"/>
      <xs:element ref="name"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="functionalPhysicalAreaRef" minOccurs="0"/>
      <xs:element ref="circuitBreakerRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="circuitBreakerAlts"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="closeRqmtsElemType">
    <xs:sequence>
      <xs:element ref="reqCondGroup"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="colspecElemType">
    <xs:attribute ref="colnum"/>
    <xs:attribute ref="colname"/>
    <xs:attribute ref="align"/>
    <xs:attribute ref="charoff"/>
    <xs:attribute ref="char"/>
    <xs:attribute ref="colwidth"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
  </xs:complexType>
  <xs:complexType name="commentAddressElemType">
    <xs:sequence>
      <xs:element ref="commentIdent"/>
      <xs:element ref="commentAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="commentTitle" minOccurs="0"/>
      <xs:element ref="issueDate"/>
      <xs:element ref="commentOriginator"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="senderIdent" use="required"/>
    <xs:attribute ref="yearOfDataIssue" use="required"/>
    <xs:attribute ref="seqNumber" use="required"/>
    <xs:attribute ref="commentType" use="required"/>
  </xs:complexType>
  <xs:complexType name="commentContentElemType">
    <xs:sequence>
      <xs:element ref="simplePara" maxOccurs="unbounded"/>
      <xs:element ref="attachmentRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused commentDispatchNoteRefElemType element; 20171011 JS -->
  <xs:complexType name="commentElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="commentContent"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="commentIdentElemType">
    <xs:sequence>
      <xs:element ref="commentCode"/>
      <xs:element ref="language"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentOriginatorElemType">
    <xs:sequence>
      <xs:element ref="dispatchAddress"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentPriorityElemType">
    <xs:attribute ref="commentPriorityCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="commentRefElemType">
    <xs:sequence>
      <xs:element ref="commentRefIdent"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentRefIdentElemType">
    <xs:sequence>
      <xs:element ref="commentCode"/>
      <xs:element ref="language" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="commentRefsElemType">
    <xs:choice>
      <xs:element ref="noReferences"/>
      <xs:element ref="dmRefGroup"/>
      <xs:element ref="dmlRefGroup"/>
      <xs:element ref="pmRefGroup"/>
      <xs:element ref="ddnRefGroup"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="commentResponseElemType">
    <xs:attribute ref="responseType" use="required"/>
  </xs:complexType>
  <xs:complexType name="commentStatusElemType">
    <xs:sequence>
      <xs:element ref="security"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="commentPriority"/>
      <xs:element ref="commentResponse" minOccurs="0"/>
      <xs:element ref="commentRefs"/>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="commonInfoDescrParaAltsElemType">
    <xs:sequence>
      <xs:element ref="commonInfoDescrPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2014-017NN R5: removed warningRef and cautionRef attributes, replaced normalParaElemGroup with choice of ncpElemGroup and fmftElemGroup; 20231019 JS -->
  <xs:complexType name="commonInfoDescrParaElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="ncpElemGroup"/>
        <xs:group ref="fmftElemGroup"/>
        <!-- CPF 2014-017NN R5: added caption and re-defined it out in all schemas except sbSchema.xsd; 20231019 JS -->
        <xs:element ref="caption"/>
      </xs:choice>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="commonInfoDescrPara"/>
        <xs:element ref="commonInfoDescrParaAlts"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="commonInfoElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:group ref="figureElemGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:sequence>
          <xs:sequence maxOccurs="unbounded">
            <xs:element ref="note" minOccurs="0"/>
            <xs:element ref="para" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element ref="commonInfoDescrPara"/>
            <xs:element ref="commonInfoDescrParaAlts"/>
          </xs:choice>
        </xs:sequence>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="commonInfoDescrPara"/>
          <xs:element ref="commonInfoDescrParaAlts"/>
        </xs:choice>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="commonRepositoryElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:group ref="figureElemGroup" minOccurs="0"/>
      <xs:group ref="multimediaElemGroup" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="functionalItemRepository"/>
        <xs:element ref="circuitBreakerRepository"/>
        <xs:element ref="partRepository"/>
        <xs:element ref="zoneRepository"/>
        <xs:element ref="accessPointRepository"/>
        <xs:element ref="toolRepository"/>
        <xs:element ref="enterpriseRepository"/>
        <xs:element ref="supplyRepository"/>
        <xs:element ref="supplyRqmtRepository"/>
        <xs:element ref="functionalPhysicalAreaRepository"/>
        <xs:element ref="controlIndicatorRepository"/>
        <xs:element ref="applicRepository"/>
        <xs:element ref="warningRepository"/>
        <xs:element ref="cautionRepository"/>
        <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
        <xs:element ref="hazardRepository"/>
        <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRepository element; 20231018 JS -->
        <xs:element ref="terminologyRepository"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="complianceCategoryElemType">
    <xs:attribute ref="complianceCategoryValue"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="componentAssyElemType">
    <xs:sequence>
      <xs:element ref="name"/>
      <xs:element ref="typeDesignation" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="componentAssyGroupElemType">
    <xs:sequence>
      <xs:element ref="componentAssy"/>
      <xs:element ref="maintQualifier" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="condCrossRefTableElemType">
    <xs:sequence>
      <xs:element ref="condTypeList"/>
      <xs:element ref="condList"/>
      <xs:element ref="incorporation" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="condCrossRefTableRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="condElemType">
    <xs:sequence>
      <xs:element ref="name"/>
      <xs:element ref="displayName" minOccurs="0"/>
      <xs:element ref="descr"/>
      <xs:element ref="prompt" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:element ref="condRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="dependency" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="condTypeRefId" use="required"/>
    <xs:attribute ref="aliasFlag"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="condIncorporationElemType">
    <xs:sequence>
      <xs:element ref="documentIncorporation" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="condRefId" use="required"/>
    <xs:attribute ref="condIssueNumber"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2011-020S1 R2: changed usage of condRefId attribute from optional to mandatory; 20171001 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2020-036US R6: added support for operational checkout elements; added conditionElemType 20231020 JS -->
  <xs:complexType name="conditionElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:element ref="note"/>
      <xs:element ref="table"/>
      <xs:element ref="figure"/>
      <xs:element ref="figureAlts"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="conditionType" use="optional"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="condListElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="cond"/>
      <xs:element ref="externalCond"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="condRefElemType">
    <xs:attribute ref="id"/>
    <xs:attribute ref="condRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="condRefGroupElemType">
    <xs:choice>
      <xs:element ref="condRef" maxOccurs="unbounded"/>
      <xs:element ref="condDescr" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="condRefGroupType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="condTypeElemType">
    <xs:sequence>
      <xs:element ref="name"/>
      <xs:element ref="descr"/>
      <xs:element ref="enumeration" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="valueDataType"/>
    <xs:attribute ref="valuePattern"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="condTypeListElemType">
    <xs:sequence>
      <xs:element ref="condType" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="conduitElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="size" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="wireColor" minOccurs="0"/>
      <xs:element ref="wallThickness" minOccurs="0"/>
      <xs:element ref="temperature" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="conduitGroupElemType">
    <xs:sequence>
      <xs:element ref="conduit" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="connectorAccessoriesElemType">
    <xs:sequence>
      <xs:element ref="partNumber" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="connectorElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="orientation" minOccurs="0"/>
      <xs:element ref="assyInstruction" minOccurs="0"/>
      <xs:element ref="rack" minOccurs="0"/>
      <xs:element ref="contactCount" minOccurs="0"/>
      <xs:element ref="contactDescrGroup" minOccurs="0"/>
      <xs:element ref="electricalLogic" minOccurs="0"/>
      <xs:element ref="connectorAccessories" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="connectorGroupElemType">
    <xs:sequence>
      <xs:element ref="connector" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contactDescrElemType">
    <xs:sequence>
      <xs:element ref="contact"/>
      <xs:element ref="contactDiameter" minOccurs="0"/>
      <xs:element ref="finishingInfo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="thermoCouplePlus" minOccurs="0"/>
      <xs:element ref="thermoCoupleMinus" minOccurs="0"/>
      <xs:element ref="specialTerminal" minOccurs="0"/>
      <xs:element ref="coaxialCableFlag" minOccurs="0"/>
      <xs:element ref="triaxialCableFlag" minOccurs="0"/>
      <xs:element ref="terminationModuleGroupingValue" minOccurs="0"/>
      <xs:element ref="blockGroupingValue" minOccurs="0"/>
      <xs:element ref="shuntGroupingValue" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contactDescrGroupElemType">
    <xs:sequence>
      <xs:element ref="contactDescr" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contactDiameterElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="contactElemType">
    <xs:attribute ref="contactIdent" use="required"/>
    <xs:attribute ref="contactFunction"/>
    <xs:attribute ref="contactType"/>
    <xs:attribute ref="connectedFlag"/>
    <xs:attribute ref="contactPartNumber"/>
    <xs:attribute ref="wireInstallationDirection"/>
  </xs:complexType>
  <xs:complexType name="contactIdentificationElemType">
    <xs:attribute ref="contactIdent" use="required"/>
  </xs:complexType>
  <xs:complexType name="contactInfoElemType">
    <xs:sequence>
      <xs:element ref="contact" minOccurs="0"/>
      <xs:element ref="wireConnectionCode" minOccurs="0"/>
      <xs:element ref="networkAnalysisCode" minOccurs="0"/>
      <xs:element ref="groupCode" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contactPersonElemType">
    <xs:sequence>
      <xs:element ref="lastName"/>
      <xs:element ref="middleName" minOccurs="0"/>
      <xs:element ref="firstName" minOccurs="0"/>
      <xs:element ref="jobTitle" minOccurs="0"/>
      <xs:element ref="contactPersonAddress" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="personPrefix"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="containerElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="contentDescriptionElemType">
    <xs:sequence>
      <xs:element ref="simplePara"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contentElemType" id="contentType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:choice minOccurs="0">
        <xs:element ref="referencedApplicGroup"/>
        <xs:element ref="referencedApplicGroupRef"/>
      </xs:choice>
      <xs:choice minOccurs="0">
        <xs:element ref="warningsAndCautions"/>
        <xs:element ref="warningsAndCautionsRef"/>
      </xs:choice>
      <xs:choice>
        <xs:element ref="applicCrossRefTable"/>
        <xs:element ref="brDoc"/>
        <xs:element ref="brex"/>
        <xs:element ref="checkList"/>
        <xs:element ref="condCrossRefTable"/>
        <xs:element ref="container"/>
        <xs:element ref="crew"/>
        <xs:element ref="description"/>
        <xs:element ref="faultReporting"/>
        <xs:element ref="faultIsolation"/>
        <xs:element ref="frontMatter"/>
        <xs:element ref="illustratedPartsCatalog"/>
        <xs:element ref="learning"/>
        <xs:element ref="maintPlanning"/>
        <xs:element ref="pmEntry" maxOccurs="unbounded"/>
        <xs:element ref="procedure"/>
        <xs:element ref="process"/>
        <xs:element ref="productCrossRefTable"/>
        <xs:element ref="sb"/>
        <xs:element ref="scoEntry" maxOccurs="unbounded"/>
        <xs:element ref="scoContent"/>
        <xs:element ref="commonRepository"/>
        <xs:element ref="update"/>
        <xs:element ref="wiringData"/>
        <xs:element ref="wiringFields"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="contextAndIsolationInfoElemType">
    <xs:sequence>
      <xs:element ref="faultContext" minOccurs="0"/>
      <xs:element ref="isolationInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="contextRulesElemType">
    <xs:sequence>
      <xs:element ref="structureObjectRuleGroup" minOccurs="0"/>
      <xs:element ref="notationRuleList" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="rulesContext"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2015-016AA R4: added new complex type controlAuthorityElemType; 20181126 JS -->
  <xs:complexType name="controlAuthorityElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="controlAuthorityText" minOccurs="0"/>
        <xs:element ref="dmRef" minOccurs="0"/>
      </xs:choice>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="controlAuthorityAttGroup"/>
  </xs:complexType>
  <!-- CPF 2015-016AA R4: added new complex type controlAuthorityGroupElemType; 20181126 JS -->
  <xs:complexType name="controlAuthorityGroupElemType">
    <xs:sequence>
      <xs:element ref="controlAuthority" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <!-- CPF 2015-016AA R4: added new complex type controlAuthorityTextElemType; 20181126 JS -->
  <xs:complexType name="controlAuthorityTextElemType">
    <xs:sequence>
      <xs:element ref="para"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="controlIndicatorDescrElemType">
    <xs:sequence>
      <xs:element ref="note" minOccurs="0"/>
      <xs:element ref="controlIndicatorFunction" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorFunctionElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="symbol"/>
      <xs:element ref="inlineSignificantData"/>
      <xs:group ref="subOrSuperScriptElemGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorGroupElemType">
    <xs:sequence>
      <xs:element ref="internalRef" maxOccurs="unbounded"/>
      <xs:element ref="controlIndicatorSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorIdentElemType">
    <xs:attribute ref="controlIndicatorNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorKeyElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorNameElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="controlIndicatorNumber"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorRepositoryElemType">
    <xs:sequence>
      <xs:element ref="controlIndicatorGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="controlIndicatorSpecElemType">
    <xs:sequence>
      <xs:element ref="controlIndicatorKey"/>
      <xs:element ref="controlIndicatorName"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="controlIndicatorDescr"/>
    </xs:sequence>
    <xs:attribute ref="controlIndicatorNumber" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="copyrightElemType">
    <xs:sequence>
      <xs:element ref="copyrightPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="copyrightParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="emphasis"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="randomList"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="correlatedFaultAltsElemType">
    <xs:sequence>
      <xs:element ref="correlatedFault" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="correlatedFaultElemType">
    <xs:sequence>
      <xs:element ref="basicCorrelatedFaults"/>
      <xs:element ref="isolateDetectedFault"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewDrillElemType">
    <xs:sequence>
      <xs:group ref="crewDrillIntroductionElemGroup"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="crewDrillStepElemGroup"/>
        <xs:element ref="subCrewDrill"/>
      </xs:choice>
      <xs:element ref="endMatter" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="drillType"/>
    <xs:attribute ref="orderedStepsFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="crewStepCondition"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewDrillStepElemType">
    <xs:sequence>
      <xs:sequence>
        <xs:element ref="title" minOccurs="0"/>
        <xs:group ref="warningAndCautionElemGroup"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:group ref="ncpElemGroup"/>
            <xs:group ref="fmftElemGroup"/>
            <xs:element ref="caption"/>
          </xs:choice>
          <xs:sequence>
            <xs:element ref="crewMemberGroup" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="crewProcedureName"/>
          </xs:sequence>
          <xs:element ref="challengeAndResponse"/>
        </xs:choice>
      </xs:sequence>
      <xs:group ref="crewDrillStepElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="stepLabel"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attribute ref="memorizeStepsFlag"/>
    <xs:attribute ref="separatorStyle"/>
    <xs:attribute ref="orderedStepsFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="crewStepCondition"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewElemType">
    <xs:choice>
      <xs:element ref="crewRefCard"/>
      <xs:element ref="descrCrew"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="crewMemberElemType">
    <xs:attribute ref="crewMemberType" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewMemberGroupElemType">
    <xs:sequence>
      <xs:element ref="crewMember" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="actionResponsibility"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewProcedureNameElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="crewRefCardElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:sequence>
        <xs:element ref="title" minOccurs="0"/>
        <xs:group ref="attentionElemGroup" minOccurs="0"/>
        <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="crewDrill" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:group ref="fmftElemGroup" minOccurs="0"/>
    </xs:choice>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="customerStockNumberElemType" mixed="true">
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataCondsElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataDestructionElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataDisclosureElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataDistributionElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataHandlingElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataRestrictionsElemType">
    <xs:sequence>
      <xs:element ref="restrictionInstructions"/>
      <xs:element ref="restrictionInfo" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dataUpdateFileElemType">
    <xs:sequence>
      <xs:element ref="updateIdentAndStatusSection"/>
      <xs:element ref="content"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnAddressElemType">
    <xs:sequence>
      <xs:element ref="ddnIdent"/>
      <xs:element ref="ddnAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
      <xs:element ref="dispatchTo"/>
      <xs:element ref="dispatchFrom"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="senderIdent" use="required"/>
    <xs:attribute ref="receiverIdent" use="required"/>
    <xs:attribute ref="yearOfDataIssue" use="required"/>
    <xs:attribute ref="seqNumber" use="required"/>
  </xs:complexType>
  <xs:complexType name="ddnContentElemType">
    <xs:sequence>
      <xs:element ref="mediaIdent" minOccurs="0"/>
      <xs:element ref="deliveryList" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="ddnContent"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="ddnIdentElemType">
    <xs:sequence>
      <xs:element ref="ddnCode"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnRefAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnRefElemType">
    <xs:sequence>
      <xs:element ref="ddnRefIdent"/>
      <xs:element ref="ddnRefAddressItems" minOccurs="0"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT4 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="new"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
  </xs:complexType>
  <xs:complexType name="ddnRefGroupElemType">
    <xs:sequence>
      <xs:element ref="ddnRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnRefIdentElemType">
    <xs:sequence>
      <xs:element ref="ddnCode"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ddnStatusElemType">
    <xs:sequence>
      <xs:element ref="security"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="authorization"/>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="defaultElemType">
    <xs:sequence>
      <xs:element ref="expression"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="definitionListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="definitionListHeader" minOccurs="0"/>
      <xs:element ref="definitionListItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="definitionListHeaderElemType">
    <xs:sequence>
      <xs:element ref="termTitle"/>
      <xs:element ref="definitionTitle"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="definitionListItemElemType">
    <xs:sequence>
      <xs:element ref="listItemTerm"/>
      <xs:element ref="listItemDefinition"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="deleteObjectElemType">
    <xs:choice>
      <xs:element ref="partIdent"/>
      <xs:element ref="zoneIdent"/>
      <xs:element ref="functionalItemIdent"/>
      <xs:element ref="circuitBreakerIdent"/>
      <xs:element ref="accessPointIdent"/>
      <xs:element ref="toolIdent"/>
      <xs:element ref="enterpriseIdent"/>
      <xs:element ref="supplyIdent"/>
      <xs:element ref="supplyRqmtIdent"/>
      <xs:element ref="functionalPhysicalAreaIdent"/>
      <xs:element ref="controlIndicatorIdent"/>
      <xs:element ref="applicSpecIdent"/>
      <xs:element ref="warningIdent"/>
      <xs:element ref="cautionIdent"/>
      <!-- CPF 2020-030US R9: added hazardRepository CIR, added hazardIdent element; 20231018 JS -->
      <xs:element ref="hazardIdent"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyIdent element; 20231018 JS -->
      <xs:element ref="terminologyIdent"/>
      <xs:element ref="multimediaIdent"/>
      <xs:element ref="multimediaAltsIdent"/>
      <xs:element ref="figureIdent"/>
      <xs:element ref="figureAltsIdent"/>
      <xs:element ref="applicIdent"/>
      <xs:element ref="applicRefIdent"/>
    </xs:choice>
    <xs:attribute ref="reasonForUpdateRefIds"/>
  </xs:complexType>
  <xs:complexType name="deleteObjectGroupElemType">
    <xs:sequence>
      <xs:element ref="deleteObject" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="deliveryListElemType">
    <xs:sequence>
      <xs:element ref="deliveryListItem" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="deliveryListItemElemType">
    <xs:sequence>
      <xs:element ref="dispatchFileName"/>
      <xs:element ref="entityControlNumber" minOccurs="0"/>
      <xs:element ref="issueInfo" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dependencyElemType">
    <xs:attribute ref="forCondValues" use="required"/>
    <xs:attribute ref="dependencyTest" use="required"/>
  </xs:complexType>
  <xs:complexType name="descrAccessDoorOrPanelElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAccessoryElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrOrientation" minOccurs="0"/>
      <xs:element ref="descrAssy" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAccessoryPartNumberElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAltPartNumberElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAmperageElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAssyElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrAttenuationElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrBlockGroupingValueElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrCircuitIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrCoaxialCableFlagElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrConduitElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrSize" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrWireColor" minOccurs="0"/>
      <xs:element ref="descrWallThickness" minOccurs="0"/>
      <xs:element ref="descrMinTemperature" minOccurs="0"/>
      <xs:element ref="descrMaxTemperature" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrConnectionListClassElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrConnectorElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrOrientation" minOccurs="0"/>
      <xs:element ref="descrAssy" minOccurs="0"/>
      <xs:element ref="descrRack" minOccurs="0"/>
      <xs:element ref="descrContactCount" minOccurs="0"/>
      <xs:element ref="descrContact" minOccurs="0"/>
      <xs:element ref="descrContactDiameter" minOccurs="0"/>
      <xs:element ref="descrFinishingInfo" minOccurs="0"/>
      <xs:element ref="descrThermoCouplePlus" minOccurs="0"/>
      <xs:element ref="descrThermoCoupleMinus" minOccurs="0"/>
      <xs:element ref="descrSpecialTerminal" minOccurs="0"/>
      <xs:element ref="descrCoaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrTriaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrTerminationModuleGroupingValue" minOccurs="0"/>
      <xs:element ref="descrBlockGroupingValue" minOccurs="0"/>
      <xs:element ref="descrShuntGroupingValue" minOccurs="0"/>
      <xs:element ref="descrElectricalContact" minOccurs="0"/>
      <xs:element ref="descrElectricalStateDescr" minOccurs="0"/>
      <xs:element ref="descrAccessoryPartNumber" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrContactCountElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrContactDiameterElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrContactElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrContactSizeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrCrewElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:sequence>
        <xs:group ref="attentionElemGroup"/>
        <xs:element ref="levelledPara" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="descrDistributionPartElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrContactSize" minOccurs="0"/>
      <xs:element ref="descrMaterial" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrWireColor" minOccurs="0"/>
      <xs:element ref="descrSurfaceProtection" minOccurs="0"/>
      <xs:element ref="descrContactDiameter" minOccurs="0"/>
      <xs:element ref="descrMinTemperature" minOccurs="0"/>
      <xs:element ref="descrMaxTemperature" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrElectricalContactElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrElectricalEquipElemType">
    <xs:sequence>
      <xs:element ref="descrFunctionalItemRef"/>
      <xs:element ref="descrPartNumber" minOccurs="0"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrInstallationLocation" minOccurs="0"/>
      <xs:element ref="descrAccessDoorOrPanel" minOccurs="0"/>
      <xs:element ref="descrAssy" minOccurs="0"/>
      <xs:element ref="descrNextHigherAssy" minOccurs="0"/>
      <xs:element ref="descrPositionOnNextHigherAssy" minOccurs="0"/>
      <xs:element ref="descrMaxMountingPositions" minOccurs="0"/>
      <xs:element ref="descrSystemBreakdownCode" minOccurs="0"/>
      <xs:element ref="descrSiblingPlugIdent" minOccurs="0"/>
      <xs:element ref="descrTransverseLink" minOccurs="0"/>
      <xs:element ref="descrConnectionListClass" minOccurs="0"/>
      <xs:element ref="descrElectricalContact" minOccurs="0"/>
      <xs:element ref="descrElectricalStateDescr" minOccurs="0"/>
      <xs:element ref="descrResponsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="descrEquipName" minOccurs="0"/>
      <xs:element ref="descrReqQuantity" minOccurs="0"/>
      <xs:element ref="descrEquipDescrRef" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrElectricalStateDescrElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrEmcCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrEquipDescrRefElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrEquipNameElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrFeedThruElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrFinishingInfoElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrForLocationElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="descrForPartElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="descrFrequencyElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrFunctionalDescrRefElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrFunctionalItemRefElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrGroupCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessElemType">
    <xs:sequence>
      <xs:element ref="descrHarnessIdent"/>
      <xs:element ref="descrPartNumber" minOccurs="0"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrHarnessVariantIdent" minOccurs="0"/>
      <xs:element ref="descrHarnessVariantIssue" minOccurs="0"/>
      <xs:element ref="descrHarnessName" minOccurs="0"/>
      <xs:element ref="descrEmcCode" minOccurs="0"/>
      <xs:element ref="descrMinTemperature" minOccurs="0"/>
      <xs:element ref="descrMaxTemperature" minOccurs="0"/>
      <xs:element ref="descrHarnessEnvironment" minOccurs="0"/>
      <xs:element ref="descrSleeve" minOccurs="0"/>
      <xs:element ref="descrRouting" minOccurs="0"/>
      <xs:element ref="descrFeedThru" minOccurs="0"/>
      <xs:element ref="descrResponsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessEnvironmentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessNameElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessVariantIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrHarnessVariantIssueElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrIdentSleeveElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrLength" minOccurs="0"/>
      <xs:element ref="descrMaterial" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrIllustrationRefElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrImpedanceElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrInstallationLocationElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrLengthElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrManufacturerCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMassElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMaterialElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMaxDiameterElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMaxHarnessSizeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMaxMountingPositionsElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMaxTemperatureElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMinDiameterElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMinHarnessSizeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrMinTemperatureElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrNetworkAnalysisCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrNextHigherAssyElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrNumberOfCoresElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrOrientationElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrOuterDiameterElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrOuterJacketColorElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrPartNumberElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrPositionOnNextHigherAssyElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrPreparationInfoElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrRackElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrReqQuantityElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrResistanceElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrResponsiblePartnerCompanyElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrRestrictionElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrRoutingElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrScreenCountElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrScreenElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSectionIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrShrinkSleeveElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrSize" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrWireColor" minOccurs="0"/>
      <xs:element ref="descrMinDiameter" minOccurs="0"/>
      <xs:element ref="descrMaxDiameter" minOccurs="0"/>
      <xs:element ref="descrMinTemperature" minOccurs="0"/>
      <xs:element ref="descrMaxTemperature" minOccurs="0"/>
      <xs:element ref="descrMinHarnessSize" minOccurs="0"/>
      <xs:element ref="descrMaxHarnessSize" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrShuntGroupingValueElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSiblingPlugIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSignalInfoElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSizeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSleeveElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSolderSleeveElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrLength" minOccurs="0"/>
      <xs:element ref="descrMaterial" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrMinDiameter" minOccurs="0"/>
      <xs:element ref="descrMaxDiameter" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSpecialTerminalElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrStandardPartGroupElemType">
    <xs:sequence>
      <xs:element ref="descrConnector" minOccurs="0"/>
      <xs:element ref="descrDistributionPart" minOccurs="0"/>
      <xs:element ref="descrAccessory" minOccurs="0"/>
      <xs:element ref="descrSolderSleeve" minOccurs="0"/>
      <xs:element ref="descrShrinkSleeve" minOccurs="0"/>
      <xs:element ref="descrIdentSleeve" minOccurs="0"/>
      <xs:element ref="descrConduit" minOccurs="0"/>
      <xs:element ref="descrWireMaterial" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSurfaceProtectionElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrSystemBreakdownCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrTerminationModuleGroupingValueElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrThermoCoupleMinusElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrThermoCouplePlusElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrTransverseLinkElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrTriaxialCableFlagElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrTwistElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrVoltageElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWallThicknessElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireColorElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireConnectionCodeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireElemType">
    <xs:sequence>
      <xs:element ref="descrCircuitIdent" minOccurs="0"/>
      <xs:element ref="descrWireNumber"/>
      <xs:element ref="descrSectionIdent" minOccurs="0"/>
      <xs:element ref="descrWireType" minOccurs="0"/>
      <xs:element ref="descrWireGauge" minOccurs="0"/>
      <xs:element ref="descrPartNumber" minOccurs="0"/>
      <xs:element ref="descrHarnessIdent" minOccurs="0"/>
      <xs:element ref="descrWireSeqNumber" minOccurs="0"/>
      <xs:element ref="descrWireInfoCircuitIdent" minOccurs="0"/>
      <xs:element ref="descrWireInfoSectionIdent" minOccurs="0"/>
      <xs:element ref="descrEmcCode" minOccurs="0"/>
      <xs:element ref="descrLength" minOccurs="0"/>
      <xs:element ref="descrWireColor" minOccurs="0"/>
      <xs:element ref="descrTwist" minOccurs="0"/>
      <xs:element ref="descrCoaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrTriaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrSignalInfo" minOccurs="0"/>
      <xs:element ref="descrFunctionalItemRef" minOccurs="0"/>
      <xs:element ref="descrContact" minOccurs="0"/>
      <xs:element ref="descrWireConnectionCode" minOccurs="0"/>
      <xs:element ref="descrNetworkAnalysisCode" minOccurs="0"/>
      <xs:element ref="descrGroupCode" minOccurs="0"/>
      <xs:element ref="descrScreen" minOccurs="0"/>
      <xs:element ref="descrPreparationInfo" minOccurs="0"/>
      <xs:element ref="descrFinishingInfo" minOccurs="0"/>
      <xs:element ref="descrResponsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="descrRouting" minOccurs="0"/>
      <xs:element ref="descrFeedThru" minOccurs="0"/>
      <xs:element ref="descrWireRoute" minOccurs="0"/>
      <xs:element ref="descrRestriction" minOccurs="0"/>
      <xs:element ref="descrNextHigherAssy" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireGaugeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireInfoCircuitIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireInfoSectionIdentElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireMaterialElemType">
    <xs:sequence>
      <xs:element ref="descrPartNumber"/>
      <xs:element ref="descrAltPartNumber" minOccurs="0"/>
      <xs:element ref="descrManufacturerCode" minOccurs="0"/>
      <xs:element ref="descrWireType" minOccurs="0"/>
      <xs:element ref="descrWireGauge" minOccurs="0"/>
      <xs:element ref="descrNumberOfCores" minOccurs="0"/>
      <xs:element ref="descrSize" minOccurs="0"/>
      <xs:element ref="descrMass" minOccurs="0"/>
      <xs:element ref="descrWireColor" minOccurs="0"/>
      <xs:element ref="descrOuterJacketColor" minOccurs="0"/>
      <xs:element ref="descrOuterDiameter" minOccurs="0"/>
      <xs:element ref="descrResistance" minOccurs="0"/>
      <xs:element ref="descrVoltage" minOccurs="0"/>
      <xs:element ref="descrAmperage" minOccurs="0"/>
      <xs:element ref="descrMinTemperature" minOccurs="0"/>
      <xs:element ref="descrMaxTemperature" minOccurs="0"/>
      <xs:element ref="descrScreenCount" minOccurs="0"/>
      <xs:element ref="descrCoaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrTriaxialCableFlag" minOccurs="0"/>
      <xs:element ref="descrImpedance" minOccurs="0"/>
      <xs:element ref="descrFrequency" minOccurs="0"/>
      <xs:element ref="descrAttenuation" minOccurs="0"/>
      <xs:element ref="descrFunctionalDescrRef" minOccurs="0"/>
      <xs:element ref="descrIllustrationRef" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireNumberElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireRouteElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireSeqNumberElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descrWireTypeElemType">
    <xs:sequence>
      <xs:group ref="wiringDescrElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="descriptionElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:sequence>
        <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="attentionElemGroup"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="levelledPara"/>
          <xs:element ref="levelledParaAlts"/>
        </xs:choice>
      </xs:sequence>
      <xs:choice>
        <xs:group ref="fmftElemGroup"/>
        <xs:element ref="caption"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
  </xs:complexType>
  <xs:complexType name="detailedFaultDescrElemType">
    <xs:sequence>
      <xs:element ref="viewLocation" minOccurs="0"/>
      <xs:element ref="systemLocation" minOccurs="0"/>
      <xs:element ref="systemName"/>
      <xs:element ref="faultySubSystem" minOccurs="0"/>
      <xs:element ref="systemIdent" minOccurs="0"/>
      <xs:element ref="systemPosition" minOccurs="0"/>
      <xs:element ref="faultEquip" minOccurs="0"/>
      <xs:element ref="faultMessageIndication" minOccurs="0"/>
      <xs:element ref="faultMessageBody"/>
      <xs:element ref="faultCond" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="detectedFaultAltsElemType">
    <xs:sequence>
      <xs:element ref="detectedFault" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="detectedFaultElemType">
    <xs:sequence>
      <xs:element ref="faultDescr"/>
      <xs:element ref="detectionInfo" minOccurs="0"/>
      <xs:element ref="isolateDetectedFault" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="faultCode" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="detectedLruItemElemType">
    <xs:sequence>
      <xs:element ref="lru" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0"/>
      <xs:element ref="detectedSruItem" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="detectedSruItemElemType">
    <xs:sequence>
      <xs:element ref="sru" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="detectionInfoElemType">
    <xs:sequence>
      <xs:element ref="detectedLruItem"/>
    </xs:sequence>
    <xs:attribute ref="detectionType"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="diagnosticProcessElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="diagnosticsReason"/>
        <xs:element ref="repair"/>
      </xs:sequence>
      <xs:element ref="locateAndRepairLruItem"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="dialogAltsElemType">
    <xs:sequence>
      <xs:element ref="dialog" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="altsName"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dialogElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="userEntry"/>
        <xs:element ref="menu"/>
        <xs:element ref="pushButton"/>
        <xs:element ref="message"/>
        <xs:element ref="dialogGroup"/>
      </xs:choice>
      <xs:element ref="helpInfo" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="submitCaption"/>
    <xs:attribute ref="cancelCaption"/>
    <xs:attribute ref="resetCaption"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dialogGroupElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="userEntry"/>
        <xs:element ref="menu"/>
        <xs:element ref="pushButton"/>
        <xs:element ref="message"/>
        <xs:element ref="dialogGroup"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="dialogSeparator"/>
  </xs:complexType>
  <xs:complexType name="dispatchAddressElemType">
    <xs:sequence>
      <xs:element ref="enterprise"/>
      <xs:element ref="dispatchPerson" minOccurs="0"/>
      <xs:element ref="address"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dispatchFromElemType">
    <xs:sequence>
      <xs:element ref="dispatchAddress"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dispatchPersonElemType">
    <xs:sequence>
      <xs:element ref="lastName"/>
      <xs:element ref="firstName" minOccurs="0"/>
      <xs:element ref="jobTitle" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="personPrefix"/>
  </xs:complexType>
  <xs:complexType name="dispatchToElemType">
    <xs:sequence>
      <xs:element ref="dispatchAddress"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="displayTextElemType">
    <xs:sequence>
      <xs:element ref="simplePara" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="distributionPartElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="contactSize" minOccurs="0"/>
      <xs:element ref="material" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="wireColor" minOccurs="0"/>
      <xs:element ref="surfaceProtection" minOccurs="0"/>
      <xs:element ref="contactDiameter" minOccurs="0"/>
      <xs:element ref="temperature" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="distributionPartGroupElemType">
    <xs:sequence>
      <xs:element ref="distributionPart" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmAddressElemType">
    <xs:sequence>
      <xs:element ref="dmIdent"/>
      <xs:element ref="dmAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
      <xs:element ref="dmTitle"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="systemDiffCode" use="required"/>
    <xs:attribute ref="systemCode" use="required"/>
    <xs:attribute ref="subSystemCode" use="required"/>
    <xs:attribute ref="subSubSystemCode" use="required"/>
    <xs:attribute ref="assyCode" use="required"/>
    <xs:attribute ref="disassyCode" use="required"/>
    <xs:attribute ref="disassyCodeVariant" use="required"/>
    <xs:attribute ref="infoCode" use="required"/>
    <xs:attribute ref="infoCodeVariant" use="required"/>
    <xs:attribute ref="itemLocationCode" use="required"/>
    <xs:attribute ref="learnCode"/>
    <xs:attribute ref="learnEventCode"/>
  </xs:complexType>
  <xs:complexType name="dmIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="dmCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmIfElemType">
    <xs:sequence>
      <xs:element ref="expression"/>
      <xs:element ref="dmThenSeq"/>
      <xs:element ref="dmElseSeq" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmLoopElemType">
    <xs:sequence>
      <xs:element ref="variablePreSet" minOccurs="0"/>
      <xs:element ref="expression"/>
      <xs:element ref="dmSeq"/>
      <xs:element ref="assertion" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmNodeAltsElemType">
    <xs:sequence>
      <xs:element ref="dmNode" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="altsName"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmNodeElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="variablePreSet" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="dmRef"/>
        <xs:sequence>
          <xs:choice maxOccurs="unbounded">
            <xs:group ref="fmftElemGroup"/>
            <xs:element ref="proceduralStep"/>
            <xs:element ref="proceduralStepAlts"/>
          </xs:choice>
          <xs:group ref="dialogElemGroup" minOccurs="0"/>
        </xs:sequence>
        <xs:group ref="dialogElemGroup"/>
        <xs:element ref="externalApplication"/>
      </xs:choice>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmRefAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="dmTitle" minOccurs="0"/>
      <xs:element ref="issueDate" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmRefElemType">
    <xs:sequence>
      <xs:element ref="dmRefIdent"/>
      <xs:element ref="dmRefAddressItems" minOccurs="0"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="referredFragment"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="referenceUsage" use="optional"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2018-006FR R7: Added the new optional project-configurable attribute referenceUsage; 20230112 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmRefGroupElemType">
    <xs:sequence>
      <xs:element ref="dmRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmRefIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="dmCode"/>
      <xs:element ref="issueInfo" minOccurs="0"/>
      <xs:element ref="language" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmSegmentRefElemType">
    <xs:sequence>
      <xs:element ref="dmRefIdent"/>
      <xs:element ref="dmRefAddressItems" minOccurs="0"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="targetPath" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmSeqAltsElemType">
    <xs:sequence>
      <xs:element ref="dmSeq" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="altsName"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmSeqGenericElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="dmNode"/>
      <xs:element ref="dmNodeAlts"/>
      <xs:element ref="dmIf"/>
      <xs:element ref="dmLoop"/>
      <xs:element ref="dmSeqAlts"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="dmStatusGenericElemType">
    <xs:sequence>
      <xs:element ref="sourceDmIdent" minOccurs="0"/>
      <xs:element ref="repositorySourceDmIdent" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="security"/>
      <xs:element ref="derivativeClassification" minOccurs="0"/>
      <!-- CPF 2015-016AA R4: added reference to controlAuthorityGroup; 20181126 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="logo" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="originator"/>
      <xs:element ref="applicCrossRefTableRef" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="applic"/>
        <xs:element ref="applicRef"/>
      </xs:choice>
      <xs:element ref="techStandard" minOccurs="0"/>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="qualityAssurance" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="systemBreakdownCode"/>
        <xs:element ref="functionalItemCode"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
      <xs:element ref="skillLevel" minOccurs="0"/>
      <xs:element ref="reasonForUpdate" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="productSafety" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="dmTitleElemType">
    <xs:sequence>
      <xs:element ref="techName"/>
      <xs:element ref="infoName" minOccurs="0"/>
      <!-- CPF 2011-009DE R3a: added new element reference to infoNameVariant; 20171026 JS -->
      <xs:element ref="infoNameVariant" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlAddressElemType">
    <xs:sequence>
      <xs:element ref="dmlIdent"/>
      <xs:element ref="dmlAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="senderIdent" use="required"/>
    <xs:attribute ref="dmlType" use="required"/>
    <xs:attribute ref="yearOfDataIssue" use="required"/>
    <xs:attribute ref="seqNumber" use="required"/>
  </xs:complexType>
  <xs:complexType name="dmlContentElemType">
    <xs:sequence>
      <xs:element ref="dmlEntry" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="dmlContent"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="listDirection"/>
  </xs:complexType>
  <xs:complexType name="dmlEntryElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="dmRef"/>
        <xs:element ref="pmRef"/>
        <xs:element ref="infoEntityRef"/>
        <xs:element ref="commentRef"/>
        <xs:element ref="dmlRef"/>
      </xs:choice>
      <xs:element ref="security" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="answer" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="dmlEntryType"/>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="dmlIdentElemType">
    <xs:sequence>
      <xs:element ref="dmlCode"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlRefElemType">
    <xs:sequence>
      <xs:element ref="dmlRefIdent"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
  </xs:complexType>
  <xs:complexType name="dmlRefGroupElemType">
    <xs:sequence>
      <xs:element ref="dmlRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlRefIdentElemType">
    <xs:sequence>
      <xs:element ref="dmlCode"/>
      <xs:element ref="issueInfo" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dmlStatusElemType">
    <xs:sequence>
      <xs:element ref="security"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="dmlRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="dmoduleElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="content"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="documentIncorporationElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:element ref="incorporationStatus" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="effectivityElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="electricalEquipAltsElemType">
    <xs:sequence>
      <xs:element ref="electricalEquip" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="electricalEquipConnectionElemType">
    <xs:sequence>
      <xs:element ref="contact" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="connectionType"/>
  </xs:complexType>
  <xs:complexType name="electricalEquipElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef"/>
      <xs:element ref="partNumber" minOccurs="0"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="assyInstruction" minOccurs="0"/>
      <xs:element ref="maxMountingPositions" minOccurs="0"/>
      <xs:element ref="systemBreakdownCode" minOccurs="0"/>
      <xs:element ref="transverseLink" minOccurs="0"/>
      <xs:element ref="connectionListClass" minOccurs="0"/>
      <xs:element ref="electricalLogic" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="equipName" minOccurs="0"/>
      <xs:element ref="reqQuantity" minOccurs="0"/>
      <xs:element ref="installationInfo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="equipDescrRef" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="changeInfo"/>
    <xs:attribute ref="equipState"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="electricalEquipGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="electricalEquip"/>
      <xs:element ref="electricalEquipAlts"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="electricalEquipStateElemType">
    <xs:sequence>
      <xs:element ref="electricalEquipConnection" maxOccurs="unbounded"/>
      <xs:element ref="electricalStateDescr" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="initialStateFlag"/>
  </xs:complexType>
  <xs:complexType name="electricalLogicElemType">
    <xs:sequence>
      <xs:element ref="electricalEquipState" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="electricalPotentialElemType">
    <xs:sequence>
      <xs:element ref="terminationModuleGroupingValue" minOccurs="0"/>
      <xs:element ref="blockGroupingValue" minOccurs="0"/>
      <xs:element ref="shuntGroupingValue" minOccurs="0"/>
      <xs:element ref="contactOrderValue" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="elseIfElemType">
    <xs:sequence>
      <xs:element ref="caseCond"/>
      <xs:group ref="crewDrillStepElemGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="emailElemType" mixed="true">
    <xs:attribute ref="contactRole"/>
  </xs:complexType>
  <xs:complexType name="embeddedSpareDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
        <xs:element ref="remarks" minOccurs="0"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="materialUsage"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="embeddedSupplyDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="supplyRef"/>
        <xs:element ref="supplyRqmtRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
        <xs:element ref="remarks" minOccurs="0"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="materialUsage"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="embeddedSupportEquipDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="toolRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
        <xs:element ref="remarks" minOccurs="0"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="materialUsage"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="emphasisElemType" mixed="true">
    <xs:sequence maxOccurs="unbounded">
      <xs:group ref="textElemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="emphasisType"/>
  </xs:complexType>
  <xs:complexType name="emptyElemType"/>
  <xs:complexType name="enabledStateElemType">
    <xs:sequence>
      <xs:element ref="expression"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="endMatterElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseElemType">
    <xs:sequence>
      <xs:element ref="enterpriseName"/>
      <xs:element ref="division" minOccurs="0"/>
      <xs:element ref="enterpriseUnit" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseGroupElemType">
    <xs:sequence>
      <xs:element ref="enterpriseInfo" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseIdentAltElemType">
    <xs:attribute ref="altCode" use="required"/>
    <xs:attribute ref="altCodeType" use="required"/>
  </xs:complexType>
  <xs:complexType name="enterpriseIdentElemType">
    <xs:attribute ref="manufacturerCodeValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseInfoElemType">
    <xs:sequence>
      <xs:element ref="enterpriseRef"/>
      <xs:element ref="shippingInfo" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="locallySuppliedFlag" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="dmRef" minOccurs="0"/>
      <xs:element ref="businessUnit" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="enterpriseType"/>
    <xs:attribute ref="enterpriseRefType"/>
    <xs:attribute ref="manufacturerCodeValue" use="required"/>
    <xs:attribute ref="qualifiedSiteFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseRepositoryElemType">
    <xs:sequence>
      <xs:element ref="enterpriseSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enterpriseSpecElemType">
    <xs:sequence>
      <xs:element ref="enterpriseIdent"/>
      <xs:element ref="enterpriseIdentAlt" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="enterpriseName"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="businessUnit" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="enterpriseRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="entryElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:element ref="warning"/>
      <xs:element ref="caution"/>
      <xs:element ref="note"/>
      <xs:element ref="legend"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="colname"/>
    <xs:attribute ref="namest"/>
    <xs:attribute ref="nameend"/>
    <xs:attribute ref="spanname"/>
    <xs:attribute ref="morerows"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="rotate"/>
    <xs:attribute ref="valign"/>
    <xs:attribute ref="align"/>
    <xs:attribute ref="charoff"/>
    <xs:attribute ref="char"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="enumerationElemType">
    <xs:attribute ref="applicPropertyValues" use="required"/>
    <xs:attribute ref="enumerationLabel"/>
    <xs:attribute ref="aliasFlag"/>
  </xs:complexType>
  <xs:complexType name="equipDescrRefElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="equipElemType">
    <xs:sequence>
      <xs:element ref="name"/>
      <xs:element ref="natoStockNumber" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef" minOccurs="0"/>
        <xs:element ref="catalogSeqNumberRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="equipGroupElemType">
    <xs:sequence>
      <xs:element ref="equip" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="equipmentNotAvailableElemType">
    <xs:sequence>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="estimatedTimeElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="evaluateElemType">
    <xs:choice minOccurs="2" maxOccurs="unbounded">
      <xs:element ref="evaluate"/>
      <xs:element ref="assert"/>
    </xs:choice>
    <xs:attribute ref="andOr" use="required"/>
    <xs:attribute ref="applicDisplayClass"/>
  </xs:complexType>
  <xs:complexType name="exportControlElemType">
    <xs:sequence>
      <xs:element ref="exportRegistrationStmt" maxOccurs="unbounded"/>
      <xs:element ref="exportRegistrationCode" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="exportRegulationType"/>
    <xs:attribute ref="governmentAuthority"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="exportRegistrationCodeElemType" mixed="true">
    <xs:attribute ref="exportRegulationCodeType"/>
  </xs:complexType>
  <xs:complexType name="exportRegistrationStmtElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="simplePara"/>
      <xs:element ref="dmRef"/>
    </xs:choice>
    <xs:attribute ref="exportRole"/>
  </xs:complexType>
  <xs:complexType name="expressionElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="expression"/>
        <xs:choice>
          <xs:element ref="booleanOperator"/>
          <xs:element ref="numberOperator"/>
          <xs:element ref="setOperator"/>
          <xs:element ref="stringOperator"/>
        </xs:choice>
        <xs:element ref="expression"/>
      </xs:sequence>
      <xs:sequence>
        <xs:choice>
          <xs:element ref="booleanFunction"/>
          <xs:element ref="numberFunction"/>
          <xs:element ref="setFunction"/>
          <xs:element ref="stringFunction"/>
          <xs:element ref="subStringFunction"/>
        </xs:choice>
        <xs:element ref="expression"/>
      </xs:sequence>
      <xs:element ref="variableRef"/>
      <xs:element ref="globalPropertyRef"/>
      <xs:element ref="assert"/>
      <xs:choice>
        <xs:element ref="booleanValue"/>
        <xs:element ref="stringValue"/>
        <xs:element ref="realValue"/>
        <xs:element ref="integerValue"/>
        <xs:element ref="setValue"/>
        <xs:element ref="noValue"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="humanReadableForm"/>
  </xs:complexType>
  <xs:complexType name="externalApplicationElemType">
    <xs:sequence>
      <xs:element ref="paraBasic"/>
      <xs:element ref="send" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="receiveValue" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="receiveByName" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="receiveByPosition" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="application" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="externalAssertElemType">
    <xs:sequence>
      <xs:element ref="applicCrossRefTableRef"/>
    </xs:sequence>
    <xs:attribute ref="applicPropertyIdent" use="required"/>
    <xs:attribute ref="applicPropertyType" use="required"/>
    <xs:attribute ref="applicPropertyValues"/>
  </xs:complexType>
  <xs:complexType name="externalCondElemType">
    <xs:sequence>
      <xs:element ref="displayName" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="condTypeRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="externalProductAttributeElemType">
    <xs:sequence>
      <xs:element ref="displayName" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="externalPubCodeElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="indexFlag"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="verbatimText"/>
    </xs:choice>
    <xs:attribute ref="pubCodingScheme"/>
  </xs:complexType>
  <xs:complexType name="externalPubIssueDateElemType" mixed="true">
    <xs:attributeGroup ref="externalPubIssueDateAttGroup"/>
  </xs:complexType>
  <xs:complexType name="externalPubIssueElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="indexFlag"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="verbatimText"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="externalPubIssueInfoElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="externalPubIssue"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="externalPubRefAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="externalPubIssueDate" minOccurs="0"/>
      <xs:element ref="security" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="shortExternalPubTitle" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="externalPubRefElemType">
    <xs:sequence>
      <xs:element ref="externalPubRefIdent"/>
      <xs:element ref="externalPubRefAddressItems" minOccurs="0"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <!-- CPF 2022-002NN R5: Reference external publication, added optional extEntityIdent attribute; 20231110 JS -->
    <xs:attribute ref="extEntityIdent" use="optional"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="referenceUsage" use="optional"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT4 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="new"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2018-006FR R7: Added the new optional project-configurable attribute referenceUsage; 20230112 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="externalPubRefIdentElemType">
    <xs:sequence>
      <xs:element ref="externalPubCode" minOccurs="0"/>
      <xs:element ref="externalPubTitle" minOccurs="0"/>
      <xs:element ref="externalPubIssueInfo" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="externalPubTitleElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="indexFlag"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="verbatimText"/>
    </xs:choice>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused externalScoCodeElemType element; 20171011 JS -->
  <xs:complexType name="externalScoElemType">
    <xs:sequence>
      <xs:element ref="externalPubRef"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused externalScoIssueElemType element; 20171011 JS -->
  <!-- CPF 2015-012EPWG R1: deleted unused externalScoIssueInfoElemType element; 20171011 JS -->
  <!-- CPF 2015-012EPWG R1: deleted unused externalScoTitleElemType element; 20171011 JS -->
  <xs:complexType name="extraResourcesElemType">
    <xs:sequence>
      <xs:group ref="fmftElemGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="fastenerElemType">
    <xs:sequence>
      <xs:element ref="fastenerType"/>
      <xs:element ref="fastenerQuantity"/>
    </xs:sequence>
    <xs:attribute ref="hingedFastenerFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="fastenerQuantityElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="fastenerTypeElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultCondElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultDescrElemType">
    <xs:sequence>
      <xs:element ref="descr" minOccurs="0"/>
      <xs:element ref="detailedFaultDescr" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultElemType">
    <xs:attribute ref="faultCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="faultEquipElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultIsolationElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:element ref="faultIsolationProcedure" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultIsolationProcedureElemType">
    <xs:sequence>
      <xs:sequence minOccurs="0">
        <xs:element ref="fault"/>
        <xs:element ref="faultDescr"/>
      </xs:sequence>
      <xs:element ref="possibleCauseGroup" minOccurs="0"/>
      <xs:element ref="isolationProcedure"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultIsolationRefElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="faultIsolationTestElemType">
    <xs:sequence>
      <xs:element ref="testDescr" minOccurs="0"/>
      <xs:element ref="testParameters" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="testProcedure" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="testType" use="required"/>
    <xs:attribute ref="testCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultMessageBodyElemType" mixed="true">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="functionalItemRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultMessageIndicationElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faultReportingElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="isolatedFault"/>
          <xs:element ref="isolatedFaultAlts"/>
        </xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="detectedFault"/>
          <xs:element ref="detectedFaultAlts"/>
        </xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="observedFault"/>
          <xs:element ref="observedFaultAlts"/>
        </xs:choice>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="correlatedFault"/>
          <xs:element ref="correlatedFaultAlts"/>
        </xs:choice>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="faultySubSystemElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="faxNumberElemType" mixed="true">
    <xs:attribute ref="contactRole"/>
  </xs:complexType>
  <xs:complexType name="feedThruElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef"/>
    </xs:sequence>
    <xs:attribute ref="holeIdent"/>
  </xs:complexType>
  <xs:complexType name="figureAltsElemType">
    <xs:sequence>
      <xs:element ref="figure" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="figureAltsIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="figureElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="graphic" maxOccurs="unbounded"/>
      <xs:element ref="legend" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="figureIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="finishingInfoElemType">
    <xs:sequence>
      <xs:group ref="preparationAndFinishElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="firstVerificationElemType">
    <xs:attribute ref="verificationType" use="required"/>
  </xs:complexType>
  <xs:complexType name="fitmentCodeElemType">
    <xs:attribute ref="fitmentCodeValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="foldoutElemType">
    <xs:choice>
      <xs:group ref="figureElemGroup"/>
      <xs:element ref="table"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="footnoteElemType">
    <xs:sequence>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="footnoteMark"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="footnoteRefElemType">
    <xs:attribute ref="internalRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="footnoteRemarksElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="simplePara"/>
      <xs:element ref="footnoteRef"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="frequencyAttenuationElemType">
    <xs:sequence>
      <xs:element ref="frequency"/>
      <xs:element ref="attenuation"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="frequencyCharacteristicsElemType">
    <xs:sequence>
      <xs:element ref="impedance"/>
      <xs:element ref="frequencyAttenuation" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="frequencyElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="fromEquipElemType">
    <xs:sequence>
      <xs:group ref="fromAndToEquipElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="frontMatterDmEntryElemType">
    <xs:sequence>
      <xs:element ref="simplePara" minOccurs="0"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="reasonForUpdate" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="identNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
      <xs:element ref="numberOfPages" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType" use="optional"/>
    <xs:attribute ref="applicRefId" use="optional"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="frontMatterElemType">
    <xs:choice>
      <xs:element ref="frontMatterTitlePage"/>
      <xs:element ref="frontMatterTableOfContent"/>
      <xs:element ref="frontMatterList"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="frontMatterExternalPubEntryElemType">
    <xs:sequence>
      <xs:element ref="simplePara" minOccurs="0"/>
      <xs:element ref="externalPubRef"/>
      <xs:element ref="reasonForUpdate" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="identNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType" use="optional"/>
    <xs:attribute ref="applicRefId" use="optional"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="frontMatterInfoElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="reducedPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="frontMatterInfoType" use="optional"/>
  </xs:complexType>
  <xs:complexType name="frontMatterListElemType">
    <xs:sequence>
      <xs:element ref="issueInfo"/>
      <xs:element ref="issueDate"/>
      <xs:element ref="reducedPara" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="frontMatterSubList" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="frontMatterType" use="required"/>
  </xs:complexType>
  <xs:complexType name="frontMatterPmEntryElemType">
    <xs:sequence>
      <xs:element ref="simplePara" minOccurs="0"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="reasonForUpdate" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="identNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType" use="optional"/>
    <xs:attribute ref="applicRefId" use="optional"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="frontMatterSubListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="reducedPara" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="frontMatterDmEntry" maxOccurs="unbounded"/>
        <xs:element ref="frontMatterPmEntry" maxOccurs="unbounded"/>
        <xs:element ref="frontMatterExternalPubEntry" maxOccurs="unbounded"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="frontMatterTableOfContentElemType">
    <xs:sequence>
      <xs:element ref="issueInfo"/>
      <xs:element ref="issueDate"/>
      <xs:element ref="reducedPara" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="tocList"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="frontMatterTitlePageElemType">
    <xs:sequence>
      <xs:element ref="productIntroName" minOccurs="0"/>
      <xs:element ref="pmTitle"/>
      <xs:element ref="shortPmTitle" minOccurs="0"/>
      <xs:element ref="pmCode"/>
      <xs:element ref="issueInfo"/>
      <xs:element ref="issueDate"/>
      <xs:element ref="externalPubCode" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="productAndModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="security"/>
      <xs:element ref="derivativeClassification" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="productIllustration" minOccurs="0"/>
      <xs:element ref="enterpriseSpec" minOccurs="0"/>
      <xs:element ref="enterpriseLogo" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="publisherLogo" minOccurs="0"/>
      <xs:element ref="barCode" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="frontMatterInfo" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="functionalDescrRefElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="functionalItemAltsElemType">
    <xs:sequence>
      <xs:element ref="functionalItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="location" minOccurs="0"/>
      <xs:element ref="accessFrom" minOccurs="0"/>
      <xs:element ref="functionalPhysicalAreaRef" minOccurs="0"/>
      <xs:element ref="reqQuantity" minOccurs="0"/>
      <xs:element ref="functionalItemFamily" minOccurs="0"/>
      <xs:element ref="groundingType" minOccurs="0"/>
      <xs:element ref="functionalItemRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="internalRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="altNumber"/>
    <xs:attribute ref="normativeComponentFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="sealedFlag"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemFamilyElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemIdentElemType">
    <xs:attribute ref="functionalItemNumber" use="required"/>
    <xs:attribute ref="functionalItemType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="installationIdent"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="functionalItemNumber" use="required"/>
    <xs:attribute ref="functionalItemType"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="installationIdent"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemRefGroupElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="functionalItemRefType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemRepositoryElemType">
    <xs:sequence>
      <xs:element ref="functionalItemSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalItemSpecElemType">
    <xs:sequence>
      <xs:element ref="functionalItemIdent"/>
      <xs:element ref="name"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="functionalPhysicalAreaRef" minOccurs="0"/>
      <xs:element ref="softwareClassification" minOccurs="0"/>
      <xs:element ref="softwareCustomizationStatus" minOccurs="0"/>
      <xs:element ref="functionalItemRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="functionalItemAlts"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalPhysicalAreaIdentElemType">
    <xs:attribute ref="systemDiffCode"/>
    <xs:attribute ref="systemCode" use="required"/>
    <xs:attribute ref="subSystemCode"/>
    <xs:attribute ref="subSubSystemCode"/>
    <xs:attribute ref="assyCode"/>
    <xs:attribute ref="disassyCode"/>
    <xs:attribute ref="disassyCodeVariant"/>
  </xs:complexType>
  <xs:complexType name="functionalPhysicalAreaRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="systemDiffCode"/>
    <xs:attribute ref="systemCode" use="required"/>
    <xs:attribute ref="subSystemCode"/>
    <xs:attribute ref="subSubSystemCode"/>
    <xs:attribute ref="assyCode"/>
    <xs:attribute ref="disassyCode"/>
    <xs:attribute ref="disassyCodeVariant"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="functionalPhysicalAreaRefGroupElemType">
    <xs:sequence>
      <xs:element ref="functionalPhysicalAreaRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="functionalPhysicalAreaRepositoryElemType">
    <xs:sequence>
      <xs:element ref="functionalPhysicalAreaSpec" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="functionalPhysicalAreaSpecElemType">
    <xs:sequence>
      <xs:element ref="functionalPhysicalAreaIdent"/>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="functionalPhysicalAreaRefGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="genericPartDataElemType">
    <xs:sequence>
      <xs:element ref="genericPartDataValue"/>
    </xs:sequence>
    <xs:attribute ref="genericPartDataName" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="genericPartDataGroupElemType">
    <xs:sequence>
      <xs:element ref="genericPartData" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="genericPropertyElemType" mixed="true">
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="genericPropertyType" use="required"/>
    <xs:attribute ref="genericPropertyFlag"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="genericPropertyGroupElemType">
    <xs:sequence>
      <xs:element ref="genericProperty" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="globalPropertyRefElemType">
    <xs:attribute ref="applicPropertyIdent" use="required"/>
    <xs:attribute ref="applicPropertyType" use="required"/>
  </xs:complexType>
  <xs:complexType name="graphicElemType">
    <xs:sequence>
      <xs:element ref="hotspot" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="reasonForAmendment" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="infoEntityIdent" use="required"/>
    <xs:attribute ref="reproductionWidth"/>
    <xs:attribute ref="reproductionHeight"/>
    <xs:attribute ref="reproductionScale"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT0 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show"/>
    <xs:attribute ref="xlink:actuate"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="groupNumberElemType" mixed="true">
    <xs:sequence minOccurs="0">
      <xs:element ref="refs"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="harnessAltsElemType">
    <xs:sequence>
      <xs:element ref="harness" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="harnessElemType">
    <xs:sequence>
      <xs:element ref="harnessIdent"/>
      <xs:element ref="harnessInfo" minOccurs="0"/>
      <xs:element ref="routing" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="changeInfo"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="harnessEnvironmentElemType">
    <xs:attribute ref="highVibrationFlag"/>
    <xs:attribute ref="hydraulicFlag"/>
  </xs:complexType>
  <xs:complexType name="harnessGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="harness"/>
      <xs:element ref="harnessAlts"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="harnessIdentElemType" mixed="true">
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
  </xs:complexType>
  <xs:complexType name="harnessInfoElemType">
    <xs:sequence>
      <xs:element ref="partNumber" minOccurs="0"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="harnessVariantIdent" minOccurs="0"/>
      <xs:element ref="harnessVariantIssue" minOccurs="0"/>
      <xs:element ref="harnessName" minOccurs="0"/>
      <xs:element ref="emcCode" minOccurs="0"/>
      <xs:element ref="temperature" minOccurs="0"/>
      <xs:element ref="harnessEnvironment" minOccurs="0"/>
      <xs:element ref="sleeveGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="harnessSizeElemType">
    <xs:sequence>
      <xs:element ref="minHarnessSize" minOccurs="0"/>
      <xs:element ref="maxHarnessSize" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardElemType">
    <xs:sequence>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="hazardousClass" maxOccurs="unbounded"/>
      <xs:element ref="safetyInformation" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardsElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="hazardRef"/>
      <xs:element ref="hazard"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; made hazardousClassValue required 20231017 JS -->
  <xs:complexType name="hazardousClassElemType">
    <xs:attribute ref="hazardousClassValue" use="required"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardIdentElemType">
    <xs:attribute ref="hazardIdentNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="hazardIdentNumber" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardRepositoryElemType">
    <xs:sequence>
      <xs:element ref="hazardSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="hazardSpecElemType">
    <xs:sequence>
      <xs:element ref="hazardIdent"/>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="hazardousClass" maxOccurs="unbounded"/>
      <xs:element ref="safetyInformation" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="hotspotElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="hotspot"/>
      <xs:element ref="internalRef"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="catalogSeqNumberRef"/>
    </xs:choice>
    <xs:attribute ref="applicationStructureIdent"/>
    <xs:attribute ref="applicationStructureName"/>
    <xs:attribute ref="hotspotType"/>
    <xs:attribute ref="hotspotTitle"/>
    <xs:attribute ref="objectDescr"/>
    <xs:attribute ref="objectCoordinates"/>
    <xs:attribute ref="visibility"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="hoursToCloseElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="hoursToOpenElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="identAndStatusSectionElemType">
    <xs:sequence>
      <xs:element ref="dmAddress" minOccurs="0"/>
      <xs:element ref="dmStatus" minOccurs="0"/>
      <xs:element ref="pmAddress" minOccurs="0"/>
      <xs:element ref="pmStatus" minOccurs="0"/>
      <xs:element ref="commentAddress" minOccurs="0"/>
      <xs:element ref="commentStatus" minOccurs="0"/>
      <xs:element ref="dmlAddress" minOccurs="0"/>
      <xs:element ref="dmlStatus" minOccurs="0"/>
      <xs:element ref="ddnAddress" minOccurs="0"/>
      <xs:element ref="ddnStatus" minOccurs="0"/>
      <xs:element ref="scormContentPackageAddress" minOccurs="0"/>
      <xs:element ref="scormContentPackageStatus" minOccurs="0"/>
      <xs:element ref="lom:lom" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="identExtensionElemType">
    <xs:attribute ref="extensionProducer" use="required"/>
    <xs:attribute ref="extensionCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="identNumberElemType">
    <xs:sequence>
      <xs:element ref="manufacturerCode"/>
      <xs:element ref="partAndSerialNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="identSleeveElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="length" minOccurs="0"/>
      <xs:element ref="material" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="identSleeveGroupElemType">
    <xs:sequence>
      <xs:element ref="identSleeve" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ifElemType">
    <xs:sequence>
      <xs:element ref="caseCond"/>
      <xs:group ref="crewDrillStepElemGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="illustratedPartsCatalogElemType">
    <xs:sequence>
      <xs:group ref="figureElemGroup" minOccurs="0"/>
      <xs:group ref="multimediaElemGroup" minOccurs="0"/>
      <xs:element ref="specDocument" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="initialProvisioningProject" minOccurs="0"/>
      <xs:element ref="zoneGroup" minOccurs="0"/>
      <xs:element ref="catalogSeqNumber" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="illustrationRefElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ilsNumberElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="impedanceElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="incorporationElemType">
    <xs:sequence>
      <xs:element ref="condIncorporation" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="incorporationStatusElemType">
    <xs:attribute ref="incorporationStatus" use="required"/>
    <xs:attribute ref="year"/>
    <xs:attribute ref="month"/>
    <xs:attribute ref="day"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="indexFlagElemType">
    <xs:attribute ref="indexLevelOne"/>
    <xs:attribute ref="indexLevelTwo"/>
    <xs:attribute ref="indexLevelThree"/>
    <xs:attribute ref="indexLevelFour"/>
  </xs:complexType>
  <!-- CPF 2020-036US R6: added support for operational checkout elements; added indicationGroupElemType 20231020 JS -->
  <xs:complexType name="indicationGroupElemType">
    <xs:sequence>
      <xs:element ref="condition"/>
      <xs:element ref="actionGroup" maxOccurs="unbounded" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="infoEntityRefElemType">
    <xs:attribute ref="infoEntityRefIdent" use="required"/>
  </xs:complexType>
  <xs:complexType name="initialProvisioningProjectElemType">
    <xs:attribute ref="initialProvisioningProjectNumber" use="required"/>
    <xs:attribute ref="initialProvisioningProjectNumberSubject" use="required"/>
    <xs:attribute ref="fileIdent"/>
    <xs:attribute ref="languageCode"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2017-017DE R5: removed subjectVariantSegment sequence child element; 20180523 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="initialProvisioningProjectRefElemType">
    <xs:attribute ref="initialProvisioningProjectNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="initializeElemType">
    <xs:sequence>
      <xs:element ref="expression"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="inlineSignificantDataElemType" mixed="true">
    <xs:attribute ref="significantParaDataType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="insertObjectGenericElemType">
    <xs:choice>
      <xs:element ref="partSpec"/>
      <xs:element ref="zoneSpec"/>
      <xs:element ref="functionalItemSpec"/>
      <xs:element ref="circuitBreakerSpec"/>
      <xs:element ref="accessPointSpec"/>
      <xs:element ref="toolSpec"/>
      <xs:element ref="enterpriseSpec"/>
      <xs:element ref="supplySpec"/>
      <xs:element ref="supplyRqmtSpec"/>
      <xs:element ref="functionalPhysicalAreaSpec"/>
      <xs:element ref="controlIndicatorSpec"/>
      <xs:element ref="applicSpec"/>
      <xs:element ref="warningSpec"/>
      <xs:element ref="cautionSpec"/>
      <!-- CPF 2020-030US R9: added hazardRepository CIR, added hazardSpec element; 20231018 JS -->
      <xs:element ref="hazardSpec"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologySpec element; 20231018 JS -->
      <xs:element ref="terminologySpec"/>
      <xs:element ref="applic"/>
      <xs:element ref="applicRef"/>
      <xs:element ref="figure"/>
      <xs:element ref="figureAlts"/>
      <xs:element ref="multimedia"/>
      <xs:element ref="multimediaAlts"/>
    </xs:choice>
    <xs:attribute ref="insertionOrder"/>
    <xs:attribute ref="targetPath"/>
  </xs:complexType>
  <xs:complexType name="insertObjectGroupElemType">
    <xs:sequence>
      <xs:element ref="insertObject" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="inspectionDefinitionElemType">
    <xs:sequence>
      <xs:element ref="inspection"/>
      <xs:element ref="taskGroup" minOccurs="0"/>
      <!-- CPF 2015-035FR R7: Added the optional and repeatable element rqmtSource to timelimitinfo and inspectionDefinition elements; 20221123 JS -->
      <xs:element ref="rqmtSource" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="inspectionElemType">
    <xs:sequence>
      <xs:element ref="limit" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="inspectionTypeElemType">
    <xs:attribute ref="inspectionTypeCategory" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="installationInfoElemType">
    <xs:sequence>
      <xs:element ref="installationLocation" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="zoneRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="siblingPlugIdent" minOccurs="0"/>
      <xs:element ref="accessDoorOrPanel" minOccurs="0"/>
      <xs:element ref="nextHigherAssy" minOccurs="0"/>
      <xs:element ref="positionOnNextHigherAssy" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="installationIdent"/>
  </xs:complexType>
  <xs:complexType name="installationLocationElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
    <xs:attribute ref="installationLocationType"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="interchangeabilityElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="internalRefElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="internalRefId"/>
    <xs:attribute ref="internalRefTargetType"/>
    <xs:attribute ref="referredFragment"/>
    <xs:attribute ref="targetTitle"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT3 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="internetElemType" mixed="true">
    <xs:attribute ref="contactRole"/>
  </xs:complexType>
  <xs:complexType name="isolateDetectedFaultElemType">
    <xs:choice>
      <xs:element ref="faultIsolationRef"/>
      <xs:element ref="lruItem" maxOccurs="unbounded"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="isolatedFaultAltsElemType">
    <xs:sequence>
      <xs:element ref="isolatedFault" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolatedFaultElemType">
    <xs:sequence>
      <xs:element ref="faultDescr"/>
      <xs:element ref="detectionInfo" minOccurs="0"/>
      <xs:element ref="locateAndRepair"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="faultCode" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationInfoElemType">
    <xs:choice>
      <xs:element ref="faultIsolationRef"/>
      <xs:element ref="diagnosticProcess"/>
      <xs:element ref="lruItem" maxOccurs="unbounded"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="isolationMainProcedureElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:choice>
        <xs:element ref="isolationStep"/>
        <xs:element ref="isolationStepAlts"/>
      </xs:choice>
      <xs:choice>
        <xs:element ref="isolationProcedureEnd"/>
        <xs:element ref="isolationProcedureEndAlts"/>
      </xs:choice>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationProcedureElemType">
    <xs:sequence>
      <xs:element ref="preliminaryRqmts"/>
      <xs:element ref="isolationMainProcedure"/>
      <xs:element ref="closeRqmts"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationProcedureEndAltsElemType">
    <xs:sequence>
      <xs:element ref="isolationProcedureEnd" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationProcedureEndElemType">
    <xs:sequence>
      <xs:group ref="isolationStepHeadingElemGroup"/>
      <xs:group ref="isolationStepActionElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationStepAltsElemType">
    <xs:sequence>
      <xs:element ref="isolationStep" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationStepAnswerElemType">
    <xs:choice>
      <xs:element ref="yesNoAnswer"/>
      <xs:element ref="listOfChoices"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="isolationStepElemType">
    <xs:sequence>
      <xs:group ref="isolationStepHeadingElemGroup"/>
      <xs:sequence minOccurs="0">
        <xs:group ref="isolationStepActionElemGroup" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="isolationStepQuestion"/>
        <xs:element ref="isolationStepAnswer"/>
      </xs:sequence>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="issueDateElemType">
    <xs:attributeGroup ref="dateAttGroup"/>
  </xs:complexType>
  <xs:complexType name="issueInfoGenericElemType">
    <xs:attribute ref="issueNumber" use="required"/>
    <xs:attribute ref="inWork" use="required"/>
  </xs:complexType>
  <xs:complexType name="itemDescrElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="itemIdentDataElemType">
    <xs:sequence>
      <xs:element ref="descrForPart"/>
      <xs:element ref="partKeyword" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="overLengthPartNumber" minOccurs="0"/>
      <xs:element ref="limitedPartNumber" minOccurs="0"/>
      <xs:element ref="customerStockNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="natoStockNumber" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="itemNumberElemType" mixed="true"/>
  <xs:complexType name="itemSeqNumberElemType">
    <xs:sequence>
      <xs:element ref="reasonForSelection" minOccurs="0"/>
      <xs:element ref="quantityPerNextHigherAssy"/>
      <xs:element ref="totalQuantity" minOccurs="0"/>
      <xs:element ref="removalOrInstallationQuantity" minOccurs="0"/>
      <xs:element ref="partRef"/>
      <xs:element ref="partSegment" minOccurs="0"/>
      <xs:element ref="partLocationSegment" minOccurs="0"/>
      <xs:element ref="applicabilitySegment" minOccurs="0"/>
      <xs:element ref="categoryOneContainerLocation" minOccurs="0"/>
      <xs:element ref="locationRcmdSegment" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="functionalItemRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ilsNumber" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="changeAuthorityData" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="genericPartDataGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="itemSeqNumberValue" use="required"/>
    <xs:attribute ref="applicRefIds"/>
    <xs:attribute ref="partCharacteristic"/>
    <xs:attribute ref="partStatus"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="languageElemType">
    <xs:attribute ref="languageIsoCode" use="required"/>
    <xs:attribute ref="countryIsoCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="lcAnswerOptionElemType">
    <xs:sequence>
      <xs:element ref="lcAnswerOptionContent"/>
      <xs:element ref="lcCorrectResponse" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="shuffle"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcAnswerOptionGroupElemType">
    <xs:sequence>
      <xs:element ref="lcAnswerOption" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcAssessmentComponentElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcMasteryScoreCriteria" minOccurs="0"/>
      <xs:element ref="lcPerformanceRubric" minOccurs="0"/>
      <xs:element ref="lcScoringMethod" minOccurs="0"/>
      <xs:element ref="lcMinimumPassThreshold" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcAssessmentStrategyElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcAssessmentComponent" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcAssetElemType">
    <xs:sequence>
      <xs:group ref="figureElemGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcAudienceElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcEntryBehavior" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcCauseAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcEnvironmentalFactor" minOccurs="0"/>
      <xs:element ref="lcInternalFactor" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcCompletionElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcAnswerOptionGroup" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="lcName" default="lcCompletion"/>
    <xs:attribute ref="lcValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcCorrectResponseElemType">
    <xs:attribute ref="lcName" default="lcCorrectResponse"/>
    <xs:attribute ref="lcValue"/>
  </xs:complexType>
  <xs:complexType name="lcDescrGenericElemType">
    <xs:sequence>
      <xs:element ref="description"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcDescriptionGroupElemType">
    <xs:sequence>
      <xs:element ref="description" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcDragAndDropElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcMatchTable" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcDurationElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcTime" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcEnvironmentalFactorElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcData" minOccurs="0"/>
      <xs:element ref="lcResources" minOccurs="0"/>
      <xs:element ref="lcIncentives" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcFeedbackItemElemType">
    <xs:sequence>
      <xs:element ref="description"/>
      <xs:element ref="internalRef"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="attemptMatch"/>
    <xs:attribute ref="feedbackStatus"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcFeedbackItemGroupElemType">
    <xs:sequence>
      <xs:element ref="lcFeedbackItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcGapAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcGapItem" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcGapItemElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcDesiredPerformanceStatement" minOccurs="0"/>
      <xs:element ref="lcActualPerformanceStatement" minOccurs="0"/>
      <xs:element ref="lcPlanObjective" minOccurs="0"/>
      <xs:element ref="lcJtaItem" minOccurs="0"/>
      <xs:element ref="lcGapStatement" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcHotspotElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcHotspotMap"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcHotspotMapElemType">
    <xs:sequence>
      <xs:group ref="figureElemGroup"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcInteractionElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="lcTrueFalse"/>
      <xs:element ref="lcSingleSelect"/>
      <xs:element ref="lcMultipleSelect"/>
      <xs:element ref="lcSequencing"/>
      <xs:element ref="lcMatching"/>
      <xs:element ref="lcHotspot"/>
      <xs:element ref="lcCompletion"/>
      <xs:element ref="lcDragAndDrop"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="shuffle"/>
    <xs:attribute ref="weightingFactor"/>
    <xs:attribute ref="attempts"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcInternalFactorElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcKnowledge" minOccurs="0"/>
      <xs:element ref="lcCapacity" minOccurs="0"/>
      <xs:element ref="lcMotives" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcInterventionDefinitionElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcNonTrainingInterventions" minOccurs="0"/>
      <xs:element ref="lcTrainingInterventions" minOccurs="0"/>
      <xs:element ref="lcLearningObjectives" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcItemElemType">
    <xs:sequence>
      <xs:element ref="description"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcLearningObjectivesElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcObjectiveItemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMatchTableElemType">
    <xs:sequence>
      <xs:element ref="lcMatchingHeader" minOccurs="0"/>
      <xs:element ref="lcMatchingPair" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMatchingElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcMatchTable" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMatchingHeaderElemType">
    <xs:sequence>
      <xs:element ref="lcItem"/>
      <xs:element ref="lcMatchingItem"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMatchingItemElemType">
    <xs:sequence>
      <xs:element ref="description"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMatchingPairElemType">
    <xs:sequence>
      <xs:element ref="lcItem"/>
      <xs:element ref="lcMatchingItem"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcMultipleSelectElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcAnswerOptionGroup" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="lcName" default="lcMultipleSelect"/>
    <xs:attribute ref="lcValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcNonTrainingInterventionsElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcPerformanceSupport" minOccurs="0"/>
      <xs:element ref="lcJobDesign" minOccurs="0"/>
      <xs:element ref="lcPersonalDevelopment" minOccurs="0"/>
      <xs:element ref="lcHumanResourceDevelopment" minOccurs="0"/>
      <xs:element ref="lcOrganizationalCommunication" minOccurs="0"/>
      <xs:element ref="lcOrganizationalDesign" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused lcObjectiveGroupElemType element; 20171011 JS -->
  <xs:complexType name="lcObjectiveItemElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcContentIdentifierName" minOccurs="0"/>
      <xs:element ref="dmRef" minOccurs="0"/>
      <xs:element ref="lcObjectiveItemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcObjectiveItemGroupElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcObjectiveItem" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcOrganizationalAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcVisionStatement" minOccurs="0"/>
      <xs:element ref="lcMissionStatement" minOccurs="0"/>
      <xs:element ref="lcValues" minOccurs="0"/>
      <xs:element ref="lcGoalStatement" minOccurs="0"/>
      <xs:element ref="lcObjectiveStatement" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcPerformanceAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcOrganizationalAnalysis" minOccurs="0"/>
      <xs:element ref="lcGapAnalysis" minOccurs="0"/>
      <xs:element ref="lcOrganizationalEnvironmentAnalysis" minOccurs="0"/>
      <xs:element ref="lcWorkEnvironmentAnalysis" minOccurs="0"/>
      <xs:element ref="lcPerformerAnalysis" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcPerformanceEvaluationElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcFormativeEvaluation" minOccurs="0"/>
      <xs:element ref="lcSummativeEvaluation" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcPerformerAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcJobTitle" minOccurs="0"/>
      <xs:element ref="lcJobCode" minOccurs="0"/>
      <xs:element ref="lcEducationLevel" minOccurs="0"/>
      <xs:element ref="lcAge" minOccurs="0"/>
      <xs:element ref="lcProfessionalBackground" minOccurs="0"/>
      <xs:element ref="lcKnowledge" minOccurs="0"/>
      <xs:element ref="lcSkills" minOccurs="0"/>
      <xs:element ref="lcAbilities" minOccurs="0"/>
      <xs:element ref="lcAttitude" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcProjectElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcClient" minOccurs="0"/>
      <xs:element ref="lcLearningPlan" minOccurs="0"/>
      <xs:element ref="lcCourseIdentNumber" minOccurs="0"/>
      <xs:element ref="lcModificationDate" minOccurs="0"/>
      <xs:element ref="lcDeliveryDate" minOccurs="0"/>
      <xs:element ref="lcPlanSubject" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSequenceElemType">
    <xs:sequence>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="lcName" default="lcSequence"/>
    <xs:attribute ref="lcValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSequenceOptionElemType">
    <xs:sequence>
      <xs:element ref="lcAnswerOptionContent" minOccurs="0"/>
      <xs:element ref="lcSequence" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSequenceOptionGroupElemType">
    <xs:sequence>
      <xs:element ref="lcSequenceOption" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSequencingElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcSequenceOptionGroup" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="lcName" default="lcSequencing"/>
    <xs:attribute ref="lcValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSingleSelectElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcAnswerOptionGroup" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="lcName" default="lcSingleSelect"/>
    <xs:attribute ref="lcValue"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcSummativeEvaluationElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcImmediatePerformanceCompetence" minOccurs="0"/>
      <xs:element ref="lcJobTransfer" minOccurs="0"/>
      <xs:element ref="lcOrganizationalImpact" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTargetAudienceElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcCurrentEntryBehaviors" minOccurs="0"/>
      <xs:element ref="lcAttitudeTowardContent" minOccurs="0"/>
      <xs:element ref="lcLearningPreferences" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTechnicalRqmtsElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcBrowsers" minOccurs="0"/>
      <xs:element ref="lcLms" minOccurs="0"/>
      <xs:element ref="lcNonLmsItEnvironment" minOccurs="0"/>
      <xs:element ref="lcPaperBasedMaterials" minOccurs="0"/>
      <xs:element ref="lcClassroom" minOccurs="0"/>
      <xs:element ref="lcOjt" minOccurs="0"/>
      <xs:element ref="lcAccessibility" minOccurs="0"/>
      <xs:element ref="lcPlayers" minOccurs="0"/>
      <xs:element ref="lcGraphicStandards" minOccurs="0"/>
      <xs:element ref="lcViewers" minOccurs="0"/>
      <xs:element ref="lcResolution" minOccurs="0"/>
      <xs:element ref="lcFileSizeLimitations" minOccurs="0"/>
      <xs:element ref="lcDownloadTime" minOccurs="0"/>
      <xs:element ref="lcSecurity" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTitleAndDescrGenericElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTitleAndDescriptionElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTrainingComponentElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcTrainingType" minOccurs="0"/>
      <xs:element ref="lcLearningStrategy" minOccurs="0"/>
      <xs:element ref="lcDuration" minOccurs="0"/>
      <xs:element ref="lcRequiredFinances" minOccurs="0"/>
      <xs:element ref="lcRequiredPersonnel" minOccurs="0"/>
      <xs:element ref="lcRequiredFacilities" minOccurs="0"/>
      <xs:element ref="lcRequiredEquipment" minOccurs="0"/>
      <xs:element ref="lcLocalCultureConsiderations" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTrainingInterventionsElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcTargetAudience" minOccurs="0"/>
      <xs:element ref="lcPrerequisites" minOccurs="0"/>
      <xs:element ref="lcRequiredEntryBehaviors" minOccurs="0"/>
      <xs:element ref="lcTrainingComponent" minOccurs="0"/>
      <xs:element ref="lcAssessmentStrategy" minOccurs="0"/>
      <xs:element ref="lcTechnicalRqmts" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcTrueFalseElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="lcQuestion"/>
      <xs:element ref="lcAsset" minOccurs="0"/>
      <xs:element ref="lcAnswerOptionGroup" minOccurs="0"/>
      <xs:element ref="lcFeedbackItemGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lcWorkEnvironmentAnalysisElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcManagerialSupport" minOccurs="0"/>
      <xs:element ref="lcPhysicalAspectsOfSite" minOccurs="0"/>
      <xs:element ref="lcSocialAspectsOfSite" minOccurs="0"/>
      <xs:element ref="lcSpecialFactors" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="learningAssessmentElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="shortDescr" minOccurs="0"/>
      <xs:element ref="lcIntro" minOccurs="0"/>
      <xs:element ref="lcDuration" minOccurs="0"/>
      <xs:element ref="lcInteraction" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="lcSummary" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="learningContentElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcInstruction" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="learningElemType">
    <xs:choice>
      <xs:element ref="learningPlan"/>
      <xs:element ref="learningOverview"/>
      <xs:element ref="learningContent"/>
      <xs:element ref="learningSummary"/>
      <xs:element ref="learningAssessment"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="learningOverviewElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcAudience" minOccurs="0"/>
      <xs:element ref="lcDuration" minOccurs="0"/>
      <xs:element ref="lcResources" minOccurs="0"/>
      <xs:element ref="lcSection" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="learningPlanElemType">
    <xs:sequence>
      <xs:element ref="lcProject" minOccurs="0"/>
      <xs:element ref="lcPerformanceAnalysis" minOccurs="0"/>
      <xs:element ref="lcCauseAnalysis" minOccurs="0"/>
      <xs:element ref="lcInterventionDefinition" minOccurs="0"/>
      <xs:element ref="lcInterventionImplementation" minOccurs="0"/>
      <xs:element ref="lcPerformanceEvaluation" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="learningSummaryElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="description" minOccurs="0"/>
      <xs:element ref="lcSummary" minOccurs="0"/>
      <xs:element ref="lcReview" minOccurs="0"/>
      <xs:element ref="lcNextSteps" minOccurs="0"/>
      <xs:element ref="lcResources" minOccurs="0"/>
      <xs:element ref="lcSection" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="legendElemType">
    <xs:sequence>
      <xs:element ref="definitionList"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lengthElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
    <xs:attribute ref="wireLengthType"/>
  </xs:complexType>
  <xs:complexType name="levelledParaAltsElemType">
    <xs:sequence>
      <xs:element ref="levelledPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="levelledParaElemType">
    <xs:sequence>
      <xs:sequence minOccurs="0">
        <xs:group ref="headingElemGroup" minOccurs="0"/>
        <xs:group ref="normalParaElemGroup" minOccurs="0"/>
      </xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="levelledPara"/>
        <xs:element ref="levelledParaAlts"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="limitElemType">
    <xs:sequence>
      <xs:element ref="sampling" minOccurs="0"/>
      <xs:element ref="threshold" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="inspectionType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="trigger" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="limitRange" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="limitTypeValue"/>
    <xs:attribute ref="limitCond"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="limitRangeElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="limitRangeFrom"/>
        <xs:element ref="limitRangeTo" minOccurs="0"/>
      </xs:sequence>
      <xs:sequence>
        <xs:element ref="limitRangeTo"/>
      </xs:sequence>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="limitRangeFromElemType">
    <xs:sequence>
      <xs:element ref="threshold"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="limitRangeToElemType">
    <xs:sequence>
      <xs:element ref="threshold"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="limitTypeElemType">
    <xs:sequence>
      <xs:element ref="threshold" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2015-034FR R6: Added the optional element <sampling> to <limitType> element; 20221123 JS -->
      <xs:element ref="sampling" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="limitUnitType"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="limitedPartNumberElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="listItemDefinitionElemType">
    <xs:sequence>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="listItemElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="note"/>
      <xs:element ref="para"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="listItemTermElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="textElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="listOfChoicesElemType">
    <xs:sequence>
      <xs:element ref="choice" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="localFabricationMaterialElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="partRef" maxOccurs="unbounded"/>
        <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:element ref="quantity" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="locateAndRepairElemType">
    <xs:sequence>
      <xs:element ref="locateAndRepairLruItem"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="locateAndRepairLruItemElemType">
    <xs:sequence>
      <xs:element ref="lru" maxOccurs="unbounded"/>
      <xs:element ref="repair" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
      <xs:element ref="locateAndRepairSruItem" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="locateAndRepairSruItemElemType">
    <xs:sequence>
      <xs:element ref="sru" maxOccurs="unbounded"/>
      <xs:element ref="repair" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="locationElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="zoneRef"/>
      <xs:sequence>
        <xs:element ref="accessPointRef"/>
        <xs:element ref="quantity" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="installationLocation"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="locationRcmdElemType">
    <xs:sequence>
      <xs:element ref="service"/>
      <xs:element ref="sourceMaintRecoverability"/>
      <xs:element ref="modelVersion" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="locationRcmdSegmentElemType">
    <xs:sequence>
      <xs:element ref="locationRcmd" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="logoElemType">
    <xs:sequence>
      <xs:element ref="symbol" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="lowestAuthorizedLevelElemType">
    <xs:attribute ref="lowestLevel" use="required"/>
  </xs:complexType>
  <xs:complexType name="lowestAuthorizedLevelGroupElemType">
    <xs:sequence>
      <xs:element ref="lowestAuthorizedLevel" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="lruElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber" minOccurs="0"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef" minOccurs="0"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="lruItemElemType">
    <xs:sequence>
      <xs:element ref="lru" maxOccurs="unbounded"/>
      <xs:element ref="faultIsolationTest" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="repair" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
      <xs:element ref="sruItem" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="mainProcedureElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:choice>
        <xs:element ref="proceduralStep"/>
        <xs:element ref="proceduralStepAlts"/>
      </xs:choice>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="maintAllocationElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="maintAllocationGroup" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="maintAllocationGroupElemType">
    <xs:sequence>
      <xs:element ref="groupNumber"/>
      <xs:choice>
        <xs:sequence>
          <xs:element ref="componentAssy"/>
          <xs:element ref="maintQualifier" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:element ref="componentAssyGroup" maxOccurs="unbounded"/>
      </xs:choice>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="maintFunctionElemType">
    <xs:sequence minOccurs="0">
      <xs:element ref="refs"/>
    </xs:sequence>
    <xs:attribute ref="function" use="required"/>
  </xs:complexType>
  <xs:complexType name="maintLevelElemType" mixed="true">
    <xs:attribute ref="maintLevelCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="maintLevelGroupElemType">
    <xs:sequence>
      <xs:element ref="maintLevel" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="maintPlanningElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="inspectionDefinition" maxOccurs="unbounded"/>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="taskDefinition"/>
          <xs:element ref="taskDefinitionAlts"/>
        </xs:choice>
        <xs:element ref="timeLimitInfo" maxOccurs="unbounded"/>
        <xs:sequence>
          <xs:element ref="maintAllocation"/>
          <xs:element ref="toolsList" minOccurs="0"/>
          <xs:element ref="remarksList" minOccurs="0"/>
        </xs:sequence>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="maintPlanningType"/>
  </xs:complexType>
  <xs:complexType name="maintQualifierElemType">
    <xs:sequence>
      <xs:element ref="maintFunction"/>
      <xs:element ref="maintLevelGroup"/>
      <xs:element ref="toolsRefs" minOccurs="0"/>
      <xs:element ref="remarksRefs" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2020-036US R6: added support for operational checkout elements; added malfunctionElemType 20231020 JS -->
  <xs:complexType name="malfunctionElemType">
    <xs:sequence>
      <xs:element ref="para"/>
      <xs:element ref="remedyAction" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="manufacturerCodeElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="massElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="materialSetRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="materialSetIdent"/>
    <xs:attribute ref="materialSetIssue"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="maxDiameterElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="maxHarnessSizeElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="maxTemperatureElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="mediaIdentElemType">
    <xs:attribute ref="label" use="required"/>
  </xs:complexType>
  <xs:complexType name="menuChoiceElemType">
    <xs:sequence>
      <xs:element ref="enabledState" minOccurs="0"/>
      <xs:element ref="prompt"/>
      <xs:choice minOccurs="0">
        <xs:element ref="externalApplication"/>
        <xs:element ref="dialog"/>
        <xs:element ref="pushButton" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:choice>
        <xs:element ref="assertion" maxOccurs="unbounded"/>
        <xs:element ref="noAssertions"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="menuChoiceDefaultFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="menuElemType">
    <xs:sequence>
      <xs:element ref="enabledState" minOccurs="0"/>
      <xs:element ref="prompt" minOccurs="0"/>
      <xs:element ref="menuChoice" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="choiceSelection"/>
    <xs:attribute ref="choiceType" use="required"/>
    <xs:attribute ref="menuChoiceFlow"/>
    <xs:attribute ref="mandatory"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="messageAltsElemType">
    <xs:sequence>
      <xs:element ref="message" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="altsName"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="messageElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="prompt" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="submitCaption"/>
    <xs:attribute ref="cancelCaption"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="minDiameterElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="minHarnessSizeElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="minTemperatureElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="modelNameElemType">
    <xs:sequence>
      <xs:element ref="name"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="modelVersionElemType">
    <xs:sequence>
      <xs:element ref="effectivity" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="modelVersionValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="modificationElemType">
    <xs:sequence>
      <xs:element ref="modificationTitle" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="authorizationIdent" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="modificationType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="multimediaAltsElemType">
    <xs:sequence>
      <xs:element ref="multimedia" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="multimediaAltsIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="multimediaElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="multimediaObject" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="multimediaIdentElemType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="multimediaObjectElemType">
    <xs:sequence>
      <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="reasonForAmendment" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="autoPlay"/>
    <xs:attribute ref="fullScreen"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="infoEntityIdent" use="required"/>
    <xs:attribute ref="multimediaObjectHeight"/>
    <xs:attribute ref="multimediaObjectWidth"/>
    <xs:attribute ref="multimediaType" use="required"/>
    <xs:attribute ref="runTimeDuration"/>
    <xs:attribute ref="showPluginControls"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT0 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show"/>
    <xs:attribute ref="xlink:actuate"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="nameElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="natoStockNumberElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="fullNatoStockNumber" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="natoSupplyClass"/>
    <xs:attribute ref="natoCodificationBureau"/>
    <xs:attribute ref="natoItemIdentNumberCore"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="nextHigherAssyElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="functionalItemRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="noAnswerElemType">
    <xs:attribute ref="nextActionRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="noAssertionsElemType"/>
  <xs:complexType name="noCondsElemType"/>
  <xs:complexType name="noInfoElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="noReferencesElemType"/>
  <xs:complexType name="noSafetyElemType"/>
  <xs:complexType name="noSparesElemType"/>
  <xs:complexType name="noSuppliesElemType"/>
  <xs:complexType name="noSupportEquipsElemType"/>
  <xs:complexType name="nonContextRuleElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="simplePara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brSeverityLevel"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="nonContextRulesElemType">
    <xs:sequence>
      <xs:element ref="nonContextRule" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="notIllustratedElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="notationNameElemType" mixed="true">
    <xs:attribute ref="allowedNotationFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="notationRuleElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="notationName"/>
      <xs:element ref="objectUse" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brSeverityLevel"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="notationRuleListElemType">
    <xs:sequence>
      <xs:element ref="notationRule" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="noteElemType">
    <xs:sequence>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="notePara"/>
        <xs:element ref="attentionSequentialList"/>
        <xs:element ref="attentionRandomList"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="noteType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="internalRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="noteParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="attentionText"/>
      <xs:element ref="attentionSequentialList"/>
      <xs:element ref="attentionRandomList"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="numberFunctionElemType">
    <xs:attribute ref="numberAction" use="required"/>
  </xs:complexType>
  <xs:complexType name="numberOperatorElemType">
    <xs:attribute ref="numberOperation" use="required"/>
  </xs:complexType>
  <xs:complexType name="objectPathElemType" mixed="true">
    <xs:attribute ref="allowedObjectFlag" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2017-013AA R3: set allowedObjectFlag to mandatory via use attribute; 20180522 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="objectUseElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="objectValueElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="valueTailoring"/>
    <xs:attribute ref="valueForm"/>
    <xs:attribute ref="valueAllowed"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="observedFaultAltsElemType">
    <xs:sequence>
      <xs:element ref="observedFault" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="observedFaultElemType">
    <xs:sequence>
      <xs:element ref="faultDescr"/>
      <xs:element ref="contextAndIsolationInfo" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="faultCode"/>
    <xs:attribute ref="faultType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="optionalPartElemType">
    <xs:choice>
      <xs:element ref="partRef" maxOccurs="unbounded"/>
      <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="originatorElemType">
    <xs:sequence>
      <xs:element ref="enterpriseName" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="enterpriseCode"/>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="otherItemsElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="otherPossibleCauseElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="outerDiameterElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="overLengthPartNumberElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="packagingElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="paraElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="paraContentElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="parameterElemType">
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="parameterIdent"/>
    <xs:attribute ref="parameterValue"/>
    <xs:attribute ref="parameterName"/>
  </xs:complexType>
  <xs:complexType name="partAndSerialNumberElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="serialNumber" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="partIdentElemType">
    <xs:attribute ref="partNumberValue" use="required"/>
    <xs:attribute ref="manufacturerCodeValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partKeywordElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partLocationSegmentElemType">
    <xs:sequence>
      <xs:element ref="attachStoreShipPart" minOccurs="0"/>
      <xs:element ref="notIllustrated" minOccurs="0"/>
      <xs:element ref="referTo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="selectOrManufactureFromIdent" minOccurs="0"/>
      <xs:element ref="descrForLocation" minOccurs="0"/>
      <xs:element ref="installationLocation" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="partNumberElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="partNumberValue" use="required"/>
    <xs:attribute ref="manufacturerCodeValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partRefGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="replacedBy" minOccurs="0"/>
      <xs:element ref="optionalPart" minOccurs="0"/>
      <xs:element ref="preferredSparePart" minOccurs="0"/>
      <xs:element ref="alteredFromPart" minOccurs="0"/>
      <xs:element ref="localFabricationMaterial" minOccurs="0"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partRepositoryElemType">
    <xs:sequence>
      <xs:element ref="partSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partSegmentElemType">
    <xs:sequence>
      <xs:element ref="itemIdentData"/>
      <xs:element ref="procurementData" minOccurs="0"/>
      <xs:element ref="techData" minOccurs="0"/>
      <xs:element ref="partRefGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="partSpecElemType">
    <xs:sequence>
      <xs:element ref="partIdent"/>
      <xs:element ref="itemIdentData"/>
      <xs:element ref="procurementData" minOccurs="0"/>
      <xs:element ref="techData" minOccurs="0"/>
      <xs:element ref="partRefGroup" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="partNumberUnavailableFlag"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="partUsageElemType">
    <xs:attribute ref="partUsageCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="personCategoryElemType">
    <xs:attribute ref="personCategoryCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="personElemType">
    <xs:sequence>
      <xs:element ref="personCategory" minOccurs="0"/>
      <xs:element ref="personSkill" minOccurs="0"/>
      <xs:element ref="trade" minOccurs="0"/>
      <xs:element ref="estimatedTime" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="man" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="personSkillElemType">
    <xs:attribute ref="skillLevelCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="personnelElemType">
    <xs:sequence>
      <xs:element ref="personCategory" minOccurs="0"/>
      <xs:element ref="personSkill" minOccurs="0"/>
      <xs:element ref="trade" minOccurs="0"/>
      <xs:element ref="estimatedTime" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="numRequired"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="phoneNumberElemType" mixed="true">
    <xs:attribute ref="contactRole"/>
  </xs:complexType>
  <xs:complexType name="physicalSecurityPilferageCodeElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="pmAddressElemType">
    <xs:sequence>
      <xs:element ref="pmIdent"/>
      <xs:element ref="pmAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="pmAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
      <xs:element ref="pmTitle"/>
      <xs:element ref="shortPmTitle" minOccurs="0"/>
      <xs:element ref="externalPubCode" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="pmCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="pmIssuer" use="required"/>
    <xs:attribute ref="pmNumber" use="required"/>
    <xs:attribute ref="pmVolume" use="required"/>
  </xs:complexType>
  <xs:complexType name="pmElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="content"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="pmType"/>
  </xs:complexType>
  <xs:complexType name="pmEntryElemType">
    <xs:sequence>
      <xs:element ref="pmEntryTitle" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="dmRef"/>
        <xs:element ref="pmRef"/>
        <xs:element ref="externalPubRef"/>
        <xs:element ref="pmEntry"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="pmEntryType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="pmIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="pmCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="pmRefAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="pmTitle" minOccurs="0"/>
      <xs:element ref="issueDate" minOccurs="0"/>
      <xs:element ref="security" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="shortPmTitle" minOccurs="0"/>
    </xs:sequence>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
  </xs:complexType>
  <xs:complexType name="pmRefElemType">
    <xs:sequence>
      <xs:element ref="pmRefIdent"/>
      <xs:element ref="pmRefAddressItems" minOccurs="0"/>
      <xs:element ref="behavior" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="referenceUsage" use="optional"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2018-006FR R7: Added the new optional project-configurable attribute referenceUsage; 20230112 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
    <!-- EPWG 90.00: removed xs:choice from pmRefElemType content model per EWPG 90.00 decision; 20231017 JS -->
  </xs:complexType>
  <xs:complexType name="pmRefGroupElemType">
    <xs:sequence>
      <xs:element ref="pmRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="pmRefIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="pmCode"/>
      <xs:element ref="issueInfo" minOccurs="0"/>
      <xs:element ref="language" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="pmStatusElemType">
    <xs:sequence>
      <xs:element ref="sourcePmIdent" minOccurs="0"/>
      <xs:element ref="security"/>
      <xs:element ref="derivativeClassification" minOccurs="0"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="logo" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="originator" minOccurs="0"/>
      <xs:element ref="applicCrossRefTableRef" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="applic"/>
        <xs:element ref="applicRef"/>
      </xs:choice>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="pubMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="qualityAssurance"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="systemBreakdownCode"/>
        <xs:element ref="functionalItemCode"/>
      </xs:choice>
      <xs:element ref="reasonForUpdate" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="policyStatementElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="positionOnNextHigherAssyElemType" mixed="true">
    <xs:attribute ref="mountPosition"/>
    <xs:attribute ref="mountRow"/>
    <xs:attribute ref="mountColumn"/>
  </xs:complexType>
  <xs:complexType name="possibleCauseGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="lru"/>
      <xs:element ref="wiringPossibleCause"/>
      <xs:element ref="otherPossibleCause"/>
      <xs:element ref="sru"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="preferredSparePartElemType">
    <xs:choice>
      <xs:element ref="partRef" maxOccurs="unbounded"/>
      <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="preliminaryRqmtsElemType">
    <xs:sequence>
      <xs:element ref="productionMaintData" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="reqCondGroup"/>
      <xs:element ref="reqPersons" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="reqTechInfoGroup" minOccurs="0"/>
      <xs:element ref="reqSupportEquips"/>
      <xs:element ref="reqSupplies"/>
      <xs:element ref="reqSpares"/>
      <xs:element ref="reqSafety"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="preparationInfoElemType">
    <xs:sequence>
      <xs:group ref="preparationAndFinishElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="proceduralStepAltsElemType">
    <xs:sequence>
      <xs:element ref="proceduralStep" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="altsName"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="proceduralStepElemType">
    <xs:sequence>
      <xs:choice>
        <xs:sequence>
          <xs:element ref="title"/>
          <xs:group ref="warningAndCautionElemGroup"/>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:group ref="ncpElemGroup"/>
            <xs:group ref="fmftElemGroup"/>
            <xs:element ref="caption"/>
          </xs:choice>
        </xs:sequence>
        <xs:sequence>
          <xs:group ref="warningAndCautionElemGroup"/>
          <xs:choice maxOccurs="unbounded">
            <xs:group ref="ncpElemGroup"/>
            <xs:group ref="fmftElemGroup"/>
            <xs:element ref="caption"/>
          </xs:choice>
        </xs:sequence>
      </xs:choice>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="proceduralStep"/>
        <xs:element ref="proceduralStepAlts"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="itemCharacteristic"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="procedureElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts"/>
      <xs:element ref="mainProcedure"/>
      <xs:element ref="closeRqmts"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="processElemType">
    <xs:sequence>
      <xs:element ref="variableDeclarations" minOccurs="0"/>
      <xs:element ref="variablePreSet" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:element ref="dmSeq"/>
      <xs:element ref="closeRqmts" minOccurs="0"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="procurementDataElemType">
    <xs:sequence>
      <xs:element ref="enterpriseRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="buyerFurnishedEquipFlag" minOccurs="0"/>
      <xs:element ref="sourcingType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="productAndModelElemType">
    <xs:sequence>
      <xs:element ref="productName"/>
      <xs:element ref="productModel" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="productAttributeElemType">
    <xs:sequence>
      <xs:element ref="name"/>
      <xs:element ref="displayName" minOccurs="0"/>
      <xs:element ref="descr"/>
      <xs:element ref="prompt" minOccurs="0"/>
      <xs:element ref="enumeration" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="valueDataType"/>
    <xs:attribute ref="valuePattern"/>
    <xs:attribute ref="productIdentifier"/>
    <xs:attribute ref="aliasFlag"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="productAttributeListElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="productAttribute"/>
      <xs:element ref="externalProductAttribute"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="productConfigurationElemType">
    <xs:sequence>
      <xs:element ref="excludedModification" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="additionalModification" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productCrossRefTableElemType">
    <xs:sequence>
      <xs:element ref="product" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productCrossRefTableRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productDefinitionRelationshipElemType">
    <xs:sequence>
      <xs:element ref="externalAssert"/>
      <xs:element ref="associate" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productElemType">
    <xs:sequence>
      <xs:element ref="assign" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="productIllustrationElemType">
    <xs:sequence>
      <xs:element ref="graphic" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productIntroNameElemType">
    <xs:sequence>
      <xs:element ref="name"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productItemElemType">
    <xs:attribute ref="productItemName"/>
    <xs:attribute ref="productItemType"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="productModelElemType">
    <xs:sequence>
      <xs:element ref="modelName"/>
      <xs:element ref="natoStockNumber" minOccurs="0"/>
      <xs:element ref="identNumber" minOccurs="0"/>
      <xs:element ref="endItemCode" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productNameElemType">
    <xs:sequence>
      <xs:element ref="name"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="productSafetyElemType" mixed="true">
    <xs:attribute ref="safetyLabel" use="required"/>
  </xs:complexType>
  <xs:complexType name="productionMaintDataElemType">
    <xs:sequence>
      <xs:element ref="thresholdInterval" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="workAreaLocationGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="taskDuration" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="promptElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="paraBasic"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="symbol"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="variableRef"/>
      <xs:element ref="globalPropertyRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="textDisplayPosition"/>
  </xs:complexType>
  <xs:complexType name="pubMediaElemType">
    <xs:attribute ref="pubMediaType" use="required"/>
    <xs:attribute ref="pubMediaCode" use="required"/>
    <xs:attribute ref="volumeNumber"/>
    <xs:attribute ref="mediaLocation"/>
  </xs:complexType>
  <xs:complexType name="pushButtonElemType">
    <xs:sequence>
      <xs:element ref="enabledState" minOccurs="0"/>
      <xs:element ref="prompt"/>
      <xs:choice>
        <xs:element ref="externalApplication"/>
        <xs:element ref="dialog"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="qualityAssuranceElemType">
    <xs:choice>
      <xs:element ref="unverified"/>
      <xs:sequence>
        <xs:element ref="firstVerification"/>
        <xs:element ref="secondVerification" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="quantityElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="quantityGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="quantityType"/>
    <xs:attribute ref="quantityTypeSpecifics"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="quantityGroupElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="quantityValue" maxOccurs="unbounded"/>
        <xs:element ref="quantityTolerance" minOccurs="0" maxOccurs="2"/>
      </xs:sequence>
      <xs:sequence>
        <xs:element ref="quantityTolerance" maxOccurs="2"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="quantityGroupType"/>
    <xs:attribute ref="quantityUnitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="quantityPerNextHigherAssyElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="quantityToleranceElemType">
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute ref="quantityToleranceType"/>
        <xs:attribute ref="quantityUnitOfMeasure"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name="quantityValueElemType">
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute ref="quantityUnitOfMeasure"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name="randomListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="listItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="listItemPrefix"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="rcmdElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="rcmdQuantityElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reasonForAmendmentElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="textElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reasonForSelectionElemType">
    <xs:attribute ref="reasonForSelectionValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reasonForUpdateElemType">
    <xs:choice>
      <xs:element ref="simplePara" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="simpleRefPara" minOccurs="0" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="updateReasonType"/>
    <xs:attribute ref="updateHighlight"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="receiveByNameElemType">
    <xs:sequence>
      <xs:element ref="returnedValueName"/>
      <xs:choice>
        <xs:element ref="variableRef"/>
        <xs:element ref="globalPropertyRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="receiveByPositionElemType">
    <xs:sequence>
      <xs:element ref="returnedValuePosition"/>
      <xs:choice>
        <xs:element ref="variableRef"/>
        <xs:element ref="globalPropertyRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="receiveValueElemType">
    <xs:choice>
      <xs:element ref="variableRef"/>
      <xs:element ref="globalPropertyRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reducedListItemParaElemType" mixed="true">
    <xs:group ref="reducedParaElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reducedParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="reducedParaElemGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="reducedRandomList"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="reducedRandomListElemType">
    <xs:sequence>
      <xs:element ref="reducedRandomListItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="listItemPrefix"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reducedRandomListItemElemType">
    <xs:sequence maxOccurs="unbounded">
      <xs:element ref="reducedListItemPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2017-030AA R0: added applicRefIds attribute to referToElemType; 20181126 JS -->
  <xs:complexType name="referToElemType">
    <xs:choice>
      <xs:element ref="initialProvisioningProjectRef" maxOccurs="unbounded"/>
      <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
      <xs:element ref="functionalItemRef" maxOccurs="unbounded"/>
      <xs:element ref="refs" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="refType"/>
    <xs:attribute ref="applicRefIds"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="referencedApplicGroupElemType">
    <xs:sequence>
      <xs:element ref="applic" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="referencedApplicGroupRefElemType">
    <xs:sequence>
      <xs:element ref="applicRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="refsElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="reinstateObjectGroupElemType">
    <xs:sequence>
      <xs:element ref="reinstateObject" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="relatedTaskElemType">
    <xs:attribute ref="taskIdent" use="required"/>
    <xs:attribute ref="relatedTaskDescr" use="required"/>
  </xs:complexType>
  <xs:complexType name="remarkCodeElemType" mixed="true">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <xs:complexType name="remarksElemType">
    <xs:sequence>
      <xs:element ref="simplePara" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="remarksGroupElemType">
    <xs:sequence>
      <xs:element ref="remarkCode"/>
      <xs:element ref="remarks"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="remarksListElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="remarksGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="remarksRefsElemType">
    <xs:sequence>
      <xs:element ref="internalRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2020-036US R6: added support for operational checkout elements; added remedyActionElemType 20231020 JS -->
  <xs:complexType name="remedyActionElemType">
    <xs:sequence>
      <xs:group ref="warningAndCautionElemGroup"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="note"/>
        <xs:element ref="para"/>
        <xs:element ref="table"/>
        <xs:element ref="figure"/>
        <xs:element ref="figureAlts"/>
      </xs:choice>
      <xs:element ref="remedyAction" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="keepWithNext"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="removalOrInstallationQuantityElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="repairElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="replaceObjectElemType">
    <xs:choice>
      <xs:element ref="partSpec"/>
      <xs:element ref="zoneSpec"/>
      <xs:element ref="functionalItemSpec"/>
      <xs:element ref="circuitBreakerSpec"/>
      <xs:element ref="accessPointSpec"/>
      <xs:element ref="toolSpec"/>
      <xs:element ref="enterpriseSpec"/>
      <xs:element ref="supplySpec"/>
      <xs:element ref="supplyRqmtSpec"/>
      <xs:element ref="functionalPhysicalAreaSpec"/>
      <xs:element ref="controlIndicatorSpec"/>
      <xs:element ref="applicSpec"/>
      <xs:element ref="warningSpec"/>
      <xs:element ref="cautionSpec"/>
      <!-- CPF 2020-030US R9: added hazardRepository CIR, added hazardSpec element; 20231018 JS -->
      <xs:element ref="hazardSpec"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologySpec element; 20231018 JS -->
      <xs:element ref="terminologySpec"/>
      <xs:element ref="applic"/>
      <xs:element ref="applicRef"/>
      <xs:element ref="figure"/>
      <xs:element ref="figureAlts"/>
      <xs:element ref="multimedia"/>
      <xs:element ref="multimediaAlts"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="replaceObjectGroupElemType">
    <xs:sequence>
      <xs:element ref="replaceObject" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="replacedByElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="partRef"/>
        <xs:element ref="catalogSeqNumberRef"/>
      </xs:choice>
      <xs:element ref="functionalItemRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="replacementCond" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="replacementCode" use="required"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="replacementCondElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondCircuitBreakerElemType">
    <xs:sequence>
      <xs:element ref="reqCond"/>
      <xs:element ref="circuitBreakerDescrGroup"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondDmElemType">
    <xs:sequence>
      <xs:element ref="reqCond"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondElemType" mixed="true">
    <xs:sequence>
      <xs:group ref="restrictedInlineTextElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="reqCondCategory"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondExternalPubElemType">
    <xs:sequence>
      <xs:element ref="reqCond"/>
      <xs:element ref="externalPubRef"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondGroupElemType">
    <xs:choice>
      <xs:element ref="noConds"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="reqCondNoRef"/>
        <xs:element ref="reqCondDm"/>
        <xs:element ref="reqCondCircuitBreaker"/>
        <xs:element ref="reqCondPm"/>
        <xs:element ref="reqCondExternalPub"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondNoRefElemType">
    <xs:sequence>
      <xs:element ref="reqCond"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqCondPmElemType">
    <xs:sequence>
      <xs:element ref="reqCond"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="variablePostSet" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqPersonsElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="personnel"/>
      <xs:element ref="person"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqQuantityElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqSafetyElemType">
    <xs:choice>
      <xs:element ref="noSafety"/>
      <xs:element ref="safetyRqmts"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqSparesElemType">
    <xs:choice>
      <xs:element ref="noSpares"/>
      <xs:element ref="spareDescrGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqSuppliesElemType">
    <xs:choice>
      <xs:element ref="noSupplies"/>
      <xs:element ref="supplyDescrGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqSupportEquipsElemType">
    <xs:choice>
      <xs:element ref="noSupportEquips"/>
      <xs:element ref="supportEquipDescrGroup"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="reqTechInfoElemType">
    <xs:choice>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
    </xs:choice>
    <xs:attribute ref="reqTechInfoCategory"/>
  </xs:complexType>
  <xs:complexType name="reqTechInfoGroupElemType">
    <xs:sequence>
      <xs:element ref="reqTechInfo" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="resistanceElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="responseElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="para"/>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="responsiblePartnerCompanyElemType">
    <xs:sequence>
      <xs:element ref="enterpriseName" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="enterpriseCode"/>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="restrictedOperationNoteElemType" mixed="true">
    <xs:attribute ref="operationType"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="restrictionInfoElemType">
    <xs:sequence>
      <xs:element ref="copyright" minOccurs="0"/>
      <xs:element ref="policyStatement" minOccurs="0"/>
      <xs:element ref="dataConds" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="restrictionInstructionsElemType">
    <xs:sequence>
      <xs:element ref="dataDistribution"/>
      <xs:element ref="exportControl" minOccurs="0"/>
      <xs:element ref="dataHandling" minOccurs="0"/>
      <xs:element ref="dataDestruction" minOccurs="0"/>
      <xs:element ref="dataDisclosure" minOccurs="0"/>
      <xs:element ref="supersedure" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="retrofitElemType">
    <xs:sequence>
      <xs:element ref="modification" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="routingElemType">
    <xs:sequence>
      <xs:element ref="clippingPoint" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="feedThru" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="rowElemType">
    <xs:sequence>
      <xs:element ref="entry" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="rqmtSourceElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="dmRef" minOccurs="0"/>
        <xs:element ref="pmRef" minOccurs="0"/>
        <xs:element ref="externalPubRef" minOccurs="0"/>
      </xs:choice>
      <xs:element ref="sourceType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="sourceOfRqmt" use="required"/>
    <xs:attribute ref="approval"/>
  </xs:complexType>
  <xs:complexType name="safetyCategoryElemType">
    <xs:attribute ref="safetyCategoryValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <!-- CPF 2020-030US R8: added hazard branch to CIR; 20231017 JS -->
  <xs:complexType name="safetyInformationElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="attentionText"/>
      <xs:element ref="attentionRandomList"/>
    </xs:choice>
    <xs:attribute ref="supplementalSafetyCategory" default="ssc01"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="safetyRqmtsElemType">
    <xs:group ref="attentionElemGroup"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
  </xs:complexType>
  <xs:complexType name="samplingElemType" mixed="true">
    <xs:attribute ref="samplingValue"/>
    <xs:attribute ref="samplingUnit"/>
    <xs:attribute ref="samplingRatio"/>
  </xs:complexType>
  <xs:complexType name="sbAccomplishmentInstructionsElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice>
        <xs:element ref="mainProcedure"/>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="para"/>
          <xs:element ref="refs"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbAccomplishmentLimitElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="sbLimit" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbAlteredToPartDescrElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbAlteredToPartElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="partRef" maxOccurs="unbounded"/>
        <xs:element ref="catalogSeqNumberRef" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:element ref="sbAlteredToPartDescr" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbApprovalElemType">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbApprovalIdent" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbApprovedDmElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="refs" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbAvailabilityElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:sequence>
        <xs:element ref="quantity" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbComplianceElemType">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbComplianceCategory" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbConcurrentSbInfoElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:sequence maxOccurs="unbounded">
        <xs:element ref="refs"/>
        <xs:element ref="sbProductModification" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbConcurrentStatus" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbConcurrentSbListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="sbConcurrentSbInfo" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbDrawingRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbItem"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbElemType">
    <xs:choice>
      <xs:element ref="sbMaterialInfoContent"/>
      <xs:sequence>
        <xs:element ref="commonInfo" minOccurs="0"/>
        <xs:element ref="sbManagementInfo"/>
        <xs:element ref="sbRevisionInfo"/>
        <xs:element ref="sbSummary"/>
        <xs:element ref="sbPlanningInfo"/>
        <xs:element ref="sbMaterialInfo"/>
        <xs:element ref="sbAccomplishmentInstructions"/>
        <xs:element ref="sbAdditionalInfo"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="cautionRefs"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbExternalMaterialSetGenericElemType" mixed="true">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="refs"/>
      <xs:element ref="footnoteRemarks"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbImpactElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="quantity" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbImpactType" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbImpactListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="sbImpact" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbIndividualRemovedSpareElemType">
    <xs:sequence>
      <xs:element ref="sbRemovedSpareDescr"/>
      <xs:element ref="sbDrawingRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="genericPropertyGroup" minOccurs="0"/>
      <xs:element ref="sbInterchange" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbIndividualSpareElemType">
    <xs:sequence>
      <xs:element ref="embeddedSpareDescr"/>
      <xs:element ref="sbDrawingRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbIndividualSupplyElemType">
    <xs:sequence>
      <xs:element ref="embeddedSupplyDescr"/>
      <xs:element ref="sbDrawingRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbIndividualSupportEquipElemType">
    <xs:sequence>
      <xs:element ref="embeddedSupportEquipDescr"/>
      <xs:element ref="sbDrawingRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbIndustrySupportElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="para"/>
        <xs:element ref="enterpriseRef"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbInterchangeElemType">
    <xs:sequence>
      <xs:element ref="sbReplacement" maxOccurs="unbounded"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbLimitElemType">
    <xs:sequence>
      <xs:element ref="sbInstructionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="sbTimeCompliance" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbManagementInfoElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="sbCompliance"/>
      <xs:element ref="sbTaskType"/>
      <xs:element ref="sbProductModificationList" minOccurs="0"/>
      <xs:element ref="sbImpactList" minOccurs="0"/>
      <xs:element ref="sbConcurrentSbList" minOccurs="0"/>
      <xs:element ref="sbAccomplishmentLimit" minOccurs="0"/>
      <xs:element ref="sbTimeAssessment" minOccurs="0"/>
      <xs:element ref="sbOriginalIssueDate"/>
      <xs:element ref="sbApproval" minOccurs="0"/>
      <xs:element ref="sbApprovedDm" minOccurs="0"/>
      <xs:element ref="sbReplacementSb" minOccurs="0"/>
      <xs:element ref="genericPropertyGroup" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbMaterialDescrElemType">
    <xs:sequence>
      <xs:element ref="sbMaterialSetRef"/>
      <xs:element ref="reqQuantity" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbMaterialInfoContentElemType">
    <xs:sequence>
      <xs:element ref="commonInfo" minOccurs="0"/>
      <xs:element ref="sbMaterialSetList"/>
      <xs:element ref="sbSupportEquipsList"/>
      <xs:element ref="sbSuppliesList"/>
      <xs:element ref="sbSparesList"/>
      <xs:element ref="sbRemovedSparesList"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sbMaterialInfoElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice>
        <xs:element ref="sbMaterialInfoContent"/>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="para"/>
          <xs:element ref="refs"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbMaterialSetElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:sequence>
        <xs:element ref="name" minOccurs="0"/>
        <xs:element ref="shortName" minOccurs="0"/>
        <xs:element ref="sbProcurementInfo" minOccurs="0"/>
        <xs:element ref="sbIndustrySupport" minOccurs="0"/>
        <xs:element ref="sbMaterialDescr" maxOccurs="unbounded"/>
        <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbMaterialSetListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbMaterialSet"/>
        <xs:choice>
          <xs:element ref="para"/>
          <xs:element ref="note"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbMaterialSetRefElemType">
    <xs:sequence>
      <xs:element ref="internalRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbOriginalIssueDateElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbPriceInfoElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:sequence>
        <xs:element ref="quantity" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbProcurementAddressElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="enterpriseRef" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbProcurementInfoElemType">
    <xs:sequence>
      <xs:element ref="sbPriceInfo" minOccurs="0"/>
      <xs:element ref="sbAvailability" minOccurs="0"/>
      <xs:element ref="sbProcurementAddress" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbProductModificationElemType" mixed="true">
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbModificationIdent"/>
    <xs:attribute ref="sbModificationClassification"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbProductModificationListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="sbProductModification" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbRefGenericElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="refs" minOccurs="0"/>
      <xs:element ref="internalRef" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbRemovedSpareDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity" minOccurs="0"/>
      <xs:element ref="footnoteRemarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="materialUsage"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbRemovedSpareSetElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="sbIndividualRemovedSpare" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbRemovedSparesListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbRemovedSpareSet"/>
        <xs:element ref="sbIndividualRemovedSpare"/>
        <xs:choice>
          <xs:element ref="para"/>
          <xs:element ref="note"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbReplacementElemType">
    <xs:sequence>
      <xs:element ref="sbCondition" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbAlteredToPart"/>
        <xs:element ref="replacedBy"/>
      </xs:choice>
      <xs:element ref="sbDrawingRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="sbMaterialSetRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbReplacementType"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbReplacementSbElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="refs"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSpareSetElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="sbIndividualSpare" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSparesListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbSpareSet"/>
        <xs:element ref="sbIndividualSpare"/>
        <xs:element ref="sbExternalSpareSet"/>
        <xs:choice>
          <xs:element ref="para"/>
          <xs:element ref="note"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSuppliesListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbSupplySet"/>
        <xs:element ref="sbIndividualSupply"/>
        <xs:element ref="sbExternalSupplySet"/>
        <xs:choice>
          <xs:element ref="para"/>
          <xs:element ref="note"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSupplySetElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="sbIndividualSupply" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSupportEquipSetElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="sbProcurementInfo" minOccurs="0"/>
      <xs:element ref="sbIndustrySupport" minOccurs="0"/>
      <xs:element ref="sbInstructionRef" minOccurs="0"/>
      <xs:element ref="sbIndividualSupportEquip" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbMaterialType"/>
    <xs:attribute ref="sbMaterialIdent"/>
    <xs:attribute ref="sbMaterialIssue"/>
    <xs:attribute ref="sbProcurableFlag"/>
    <xs:attribute ref="sbSupplierValue"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbSupportEquipsListElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="sbSupportEquipSet"/>
        <xs:element ref="sbIndividualSupportEquip"/>
        <xs:element ref="sbExternalSupportEquipSet"/>
        <xs:choice>
          <xs:element ref="para"/>
          <xs:element ref="note"/>
        </xs:choice>
      </xs:choice>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTaskTypeElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbTaskCategory" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTimeAssessmentElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:element ref="sbTimeInfo" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTimeComplianceElemType">
    <xs:sequence>
      <xs:element ref="limit" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbTimeComplianceType" use="required"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTimeGenericElemType">
    <xs:sequence>
      <xs:element ref="quantity" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTimeInfoElemType">
    <xs:sequence>
      <xs:element ref="sbCondition" minOccurs="0"/>
      <xs:element ref="sbDuration"/>
      <xs:element ref="sbEstimatedTime"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="sbAggregationLevelFlag"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTopicElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="noInfo"/>
        <xs:element ref="sbTopicContent"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="sbTopicType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sbTopicSetGenericElemType">
    <xs:choice>
      <xs:element ref="noInfo"/>
      <xs:sequence>
        <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="sbTopic" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="scoContentElemType">
    <xs:sequence minOccurs="0">
      <xs:element ref="contentDescription" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="trainingStep" maxOccurs="unbounded"/>
        <xs:element ref="externalSco"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="scoEntryType"/>
    <xs:attribute ref="warningRefs"/>
    <xs:attribute ref="cautionRefs"/>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused scoEntryCodeElemType element; 20171011 JS -->
  <!-- CPF 2015-012EPWG R1: deleted unused scoEntryContentElemType element; 20171011 JS -->
  <xs:complexType name="scoEntryElemType">
    <xs:sequence>
      <xs:element ref="scoEntryTitle" minOccurs="0"/>
      <xs:element ref="scoEntryItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="scoEntryType"/>
  </xs:complexType>
  <!-- CPF 2014-015AA R1: updated scoEntryItemElemType to include choice of dmRef or scormContentPackageRef; 20180711 JS -->
  <xs:complexType name="scoEntryItemElemType">
    <xs:sequence>
      <xs:element ref="lom:lom" minOccurs="0"/>
      <xs:choice>
        <xs:sequence>
          <xs:choice>
            <xs:element ref="dmRef"/>
            <xs:element ref="scormContentPackageRef"/>
          </xs:choice>
          <xs:element ref="scoEntry" minOccurs="0"/>
        </xs:sequence>
        <xs:element ref="scoEntry"/>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused scoMediaElemType element; 20171011 JS -->
  <xs:complexType name="scormContentPackageAddressElemType">
    <xs:sequence>
      <xs:element ref="scormContentPackageIdent"/>
      <xs:element ref="scormContentPackageAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="scormContentPackageAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate"/>
      <xs:element ref="scormContentPackageTitle"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="scormContentPackageCodeElemType">
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="scormContentPackageIssuer" use="required"/>
    <xs:attribute ref="scormContentPackageNumber" use="required"/>
    <xs:attribute ref="scormContentPackageVolume" use="required"/>
  </xs:complexType>
  <xs:complexType name="scormContentPackageElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="identAndStatusSection"/>
      <xs:element ref="content"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="scormContentPackageIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="scormContentPackageCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="scormContentPackageMediaElemType">
    <xs:attribute ref="scormContentPackageMediaType" use="required"/>
    <xs:attribute ref="scormContentPackageMediaCode" use="required"/>
    <xs:attribute ref="volumeNumber"/>
    <xs:attribute ref="mediaLocation"/>
  </xs:complexType>
  <!-- CPF 2014-015AA R1: added new complex type scormContentPackageRefElemType; 20180711 JS -->
  <xs:complexType name="scormContentPackageRefElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="scormContentPackageRefIdent"/>
        <xs:element ref="scormContentPackageRefAddressItems" minOccurs="0"/>
        <xs:element ref="behavior" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <!-- CPF 2014-015AA R1: added new complex type scormContentPackageRefAddressItemsElemType; 20180711 JS -->
  <xs:complexType name="scormContentPackageRefAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="issueDate" minOccurs="0"/>
      <xs:element ref="scormContentPackageTitle" minOccurs="0"/>
    </xs:sequence>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" default="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" default="replace"/>
    <xs:attribute ref="xlink:actuate" default="onRequest"/>
  </xs:complexType>
  <!-- CPF 2014-015AA R1: added new complex type scormContentPackageRefIdentElemType; 20180711 JS -->
  <xs:complexType name="scormContentPackageRefIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="scormContentPackageCode"/>
      <xs:element ref="issueInfo" minOccurs="0"/>
      <xs:element ref="language" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="scormContentPackageStatusElemType">
    <xs:sequence>
      <xs:element ref="sourceScormContentPackageIdent" minOccurs="0"/>
      <xs:element ref="security"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="originator" minOccurs="0"/>
      <xs:element ref="applicCrossRefTableRef" minOccurs="0"/>
      <xs:choice minOccurs="0">
        <xs:element ref="applic"/>
        <xs:element ref="applicRef"/>
      </xs:choice>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="scormContentPackageMedia" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="qualityAssurance"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="systemBreakdownCode"/>
        <xs:element ref="functionalItemCode"/>
      </xs:choice>
      <xs:element ref="personSkill"/>
      <xs:element ref="reasonForUpdate" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="issueType"/>
  </xs:complexType>
  <xs:complexType name="screenElemType" mixed="true">
    <xs:attribute ref="screenLevel"/>
    <xs:attribute ref="screenType"/>
    <xs:attribute ref="screenStyle"/>
  </xs:complexType>
  <xs:complexType name="screenGroupElemType">
    <xs:sequence>
      <xs:element ref="screen" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="secondVerificationElemType">
    <xs:attribute ref="verificationType" use="required"/>
  </xs:complexType>
  <xs:complexType name="securityElemType">
    <xs:attribute ref="securityClassification" use="required"/>
    <xs:attributeGroup ref="commercialSecurityAttGroup"/>
    <xs:attribute ref="derivativeClassificationRefId"/>
  </xs:complexType>
  <xs:complexType name="selectOrManufactureElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="selectOrManufactureFromIdentElemType">
    <xs:sequence>
      <xs:element ref="selectOrManufacture" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="selectOrManufactureValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sendElemType">
    <xs:sequence>
      <xs:element ref="sendName" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="variableRef"/>
        <xs:element ref="globalPropertyRef"/>
        <xs:element ref="stringValue"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sequentialListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="listItem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="serialNumberElemType">
    <xs:attribute ref="serialNumberForm" use="required"/>
    <xs:attribute ref="serialNumberValue" use="required"/>
  </xs:complexType>
  <xs:complexType name="serviceElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="setFunctionElemType">
    <xs:attribute ref="setAction" use="required"/>
  </xs:complexType>
  <xs:complexType name="setOperatorElemType">
    <xs:attribute ref="setOperation" use="required"/>
  </xs:complexType>
  <xs:complexType name="setValueElemType">
    <xs:choice>
      <xs:element ref="stringValue" maxOccurs="unbounded"/>
      <xs:element ref="realValue" maxOccurs="unbounded"/>
      <xs:element ref="integerValue" maxOccurs="unbounded"/>
      <xs:element ref="noValue"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="shelfLifeElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="shippingInfoElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="packaging"/>
      <xs:element ref="transport"/>
      <xs:element ref="shelfLife"/>
      <xs:element ref="simpleRemark"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="shortDescrElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="shortExternalPubTitleElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="indexFlag"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="verbatimText"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="shrinkSleeveElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="size" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="wireColor" minOccurs="0"/>
      <xs:element ref="sleeveDiameter" minOccurs="0"/>
      <xs:element ref="temperature" minOccurs="0"/>
      <xs:element ref="harnessSize" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="shrinkSleeveGroupElemType">
    <xs:sequence>
      <xs:element ref="shrinkSleeve" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="siblingPlugIdentElemType">
    <xs:sequence>
      <xs:element ref="functionalItemRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="simpleParaElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="simpleRemarkElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sizeElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="skillLevelElemType">
    <xs:attribute ref="skillLevelCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="sleeveDiameterElemType">
    <xs:sequence>
      <xs:element ref="minDiameter" minOccurs="0"/>
      <xs:element ref="maxDiameter" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sleeveElemType">
    <xs:sequence>
      <xs:element ref="partNumber" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="sleeveMaterial"/>
  </xs:complexType>
  <xs:complexType name="sleeveGroupElemType">
    <xs:sequence>
      <xs:element ref="sleeve" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="snsAssyElemType">
    <xs:sequence>
      <xs:element ref="snsCode"/>
      <xs:element ref="snsTitle"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="snsDescrElemType">
    <xs:sequence>
      <xs:element ref="snsSystem" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="snsRulesElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="snsDescr" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brSeverityLevel"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="snsSubSubSystemElemType">
    <xs:sequence>
      <xs:element ref="snsCode"/>
      <xs:element ref="snsTitle"/>
      <xs:element ref="snsAssy" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="snsSubSystemElemType">
    <xs:sequence>
      <xs:element ref="snsCode"/>
      <xs:element ref="snsTitle"/>
      <xs:element ref="snsSubSubSystem" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="snsSystemElemType">
    <xs:sequence>
      <xs:element ref="snsCode"/>
      <xs:element ref="snsTitle"/>
      <xs:element ref="snsSubSystem" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="solderSleeveElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="length" minOccurs="0"/>
      <xs:element ref="material" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="sleeveDiameter" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="solderSleeveGroupElemType">
    <xs:sequence>
      <xs:element ref="solderSleeve" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sourceDmIdentGenericElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="dmCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sourceMaintRecoverabilityElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sourcePmIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="pmCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2015-012EPWG R1: deleted unused sourceScoIdentElemType element; 20171011 JS -->
  <xs:complexType name="sourceScormContentPackageIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="scormContentPackageCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sourceTypeElemType">
    <xs:attribute ref="sourceCriticality"/>
    <xs:attribute ref="sourceTypeCode"/>
  </xs:complexType>
  <xs:complexType name="spanspecElemType">
    <xs:attribute ref="namest" use="required"/>
    <xs:attribute ref="nameend" use="required"/>
    <xs:attribute ref="spanname" use="required"/>
    <xs:attribute ref="align" default="center"/>
    <xs:attribute ref="charoff"/>
    <xs:attribute ref="char"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
  </xs:complexType>
  <xs:complexType name="spareDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef"/>
        <xs:element ref="functionalItemRef"/>
        <xs:element ref="materialSetRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="remarks" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:choice>
      <xs:element ref="embeddedSpareDescr" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="materialUsage"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="spareDescrGroupElemType">
    <xs:sequence>
      <xs:element ref="spareDescr" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="sparePartClassElemType">
    <xs:attribute ref="sparePartClassCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="specDocumentElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="manufacturerCodeValue"/>
    <xs:attribute ref="countryIsoCode"/>
    <xs:attribute ref="specDocumentNumber"/>
    <xs:attribute ref="specDocumentType"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="specGroupElemType">
    <xs:sequence>
      <xs:element ref="specDocument" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="vendorFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="specialStorageElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sruElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber" minOccurs="0"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="partRef" minOccurs="0"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sruItemElemType">
    <xs:sequence>
      <xs:element ref="sru" maxOccurs="unbounded"/>
      <xs:element ref="faultIsolationTest" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="repair" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="faultProbability"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="standardPartGroupElemType">
    <xs:sequence>
      <xs:element ref="connectorGroup" minOccurs="0"/>
      <xs:element ref="distributionPartGroup" minOccurs="0"/>
      <xs:element ref="accessoryGroup" minOccurs="0"/>
      <xs:element ref="solderSleeveGroup" minOccurs="0"/>
      <xs:element ref="shrinkSleeveGroup" minOccurs="0"/>
      <xs:element ref="identSleeveGroup" minOccurs="0"/>
      <xs:element ref="conduitGroup" minOccurs="0"/>
      <xs:element ref="wireMaterialGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="stringFunctionElemType">
    <xs:attribute ref="stringAction" use="required"/>
  </xs:complexType>
  <xs:complexType name="stringOperatorElemType">
    <xs:attribute ref="stringOperation" use="required"/>
  </xs:complexType>
  <xs:complexType name="structureObjectRuleElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="objectPath"/>
      <xs:element ref="objectUse" minOccurs="0"/>
      <xs:element ref="objectValue" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brSeverityLevel"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="structureObjectRuleGroupElemType">
    <xs:sequence>
      <xs:element ref="structureObjectRule" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="subCrewDrillElemType">
    <xs:sequence>
      <xs:group ref="crewDrillIntroductionElemGroup"/>
      <xs:group ref="crewDrillStepElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="orderedStepsFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="checkAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="subStringFunctionElemType">
    <xs:sequence>
      <xs:element ref="subStringPosition"/>
      <xs:choice minOccurs="0">
        <xs:element ref="subStringLength"/>
        <xs:element ref="subStringPosition"/>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="subjectIdentElemType">
    <xs:sequence>
      <xs:element ref="manufacturerCode"/>
      <xs:element ref="partNumber"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2017-017DE R5: removed subjectVariantSegmentElemType per SC 33.01; 20180525 JS -->
  <xs:complexType name="supersedureElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supervisorLevelElemType">
    <xs:attribute ref="supervisorLevelCode"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="supplyRef"/>
        <xs:element ref="supplyRqmtRef"/>
        <xs:element ref="materialSetRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="remarks" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:choice>
      <!-- CPF 2020-030US R8: added hazard branch to CIR; added hazards element 20231020 JS -->
      <xs:element ref="hazards" minOccurs="0"/>
      <xs:element ref="embeddedSupplyDescr" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="materialUsage"/>
    <!-- CPF 2010-011SE R11: Added a new optional configurable attribute supplyCategory; 20230505 JS -->
    <xs:attribute ref="supplyCategory"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyDescrGroupElemType">
    <xs:sequence>
      <xs:element ref="supplyDescr" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="supplyIdentElemType">
    <xs:attribute ref="supplyNumber" use="required"/>
    <xs:attribute ref="supplyNumberType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="supplyNumber" use="required"/>
    <xs:attribute ref="supplyNumberType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRepositoryElemType">
    <xs:sequence>
      <xs:element ref="supplySpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtAltIdentElemType">
    <xs:attribute ref="materialCategory"/>
    <xs:attribute ref="supplyRqmtNumber" use="required"/>
    <xs:attribute ref="vendorFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtAltStatusElemType">
    <xs:sequence>
      <xs:element ref="authorizationStatus"/>
      <xs:element ref="supplyRqmtRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="supplyRqmtAltsElemType">
    <xs:sequence>
      <xs:element ref="supplyRqmt" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtElemType">
    <xs:sequence>
      <xs:element ref="supplyRqmtAltIdent"/>
      <xs:element ref="supplySetGroup"/>
      <xs:element ref="supplyRqmtAltStatus" minOccurs="0"/>
      <xs:element ref="enterpriseRef" minOccurs="0"/>
      <xs:element ref="supplyClassification" minOccurs="0"/>
      <xs:element ref="specGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="name"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="safetyCategory" minOccurs="0"/>
      <xs:element ref="usage" minOccurs="0"/>
      <xs:element ref="rcmd" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="productCategory"/>
    <xs:attribute ref="supplyRqmtType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtIdentElemType">
    <xs:attribute ref="materialCategory"/>
    <xs:attribute ref="supplyRqmtNumber" use="required"/>
    <xs:attribute ref="vendorFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="materialCategory"/>
    <xs:attribute ref="vendorFlag"/>
    <xs:attribute ref="supplyRqmtNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtRepositoryElemType">
    <xs:sequence>
      <xs:element ref="supplyRqmtSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtSpecElemType">
    <xs:sequence>
      <xs:element ref="supplyRqmtIdent"/>
      <xs:element ref="physicalChemicalDescr" minOccurs="0"/>
      <xs:element ref="usage" minOccurs="0"/>
      <xs:element ref="complianceCategory" minOccurs="0"/>
      <xs:element ref="processCategory" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="supplyRqmtStatus" minOccurs="0"/>
      <xs:element ref="specGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="supplyRqmtAlts"/>
      <xs:element ref="rcmd" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <!-- CPF 2010-011SE R11: Added a new optional configurable attribute supplyCategory; 20230505 JS -->
    <xs:attribute ref="supplyCategory"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplyRqmtStatusElemType">
    <xs:sequence>
      <xs:element ref="supplyRqmtRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="supplyRqmtStatusValue"/>
  </xs:complexType>
  <xs:complexType name="supplySetElemType">
    <xs:sequence>
      <xs:element ref="supplyRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplySetGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="supplySet"/>
      <xs:element ref="supplyRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supplySpecElemType">
    <xs:sequence>
      <xs:element ref="supplyIdent"/>
      <xs:element ref="supplySetGroup" minOccurs="0"/>
      <xs:element ref="supplyClassification" minOccurs="0"/>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="specGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="enterpriseGroup" minOccurs="0"/>
      <xs:element ref="natoStockNumber" minOccurs="0"/>
      <xs:element ref="quantity" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="rcmd" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="lowestAuthorizedLevelGroup" minOccurs="0"/>
      <!-- CPF 2020-030US R8: added hazard branch to CIR; replaced hazardousClass with optional hazards element 20231017 JS -->
      <xs:element ref="hazards" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="manufacturedFlag"/>
    <xs:attribute ref="obsoleteFlag"/>
    <xs:attribute ref="specialLabelFlag"/>
    <!-- CPF 2010-011SE R11: Added a new optional configurable attribute supplyCategory; 20230505 JS -->
    <xs:attribute ref="supplyCategory"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supportEquipDescrElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="catalogSeqNumberRef"/>
        <xs:element ref="natoStockNumber"/>
        <xs:element ref="identNumber"/>
        <xs:element ref="toolRef"/>
        <xs:element ref="materialSetRef"/>
      </xs:choice>
      <xs:element ref="reqQuantity"/>
      <xs:choice>
        <xs:element ref="remarks" minOccurs="0"/>
        <xs:element ref="footnoteRemarks" minOccurs="0"/>
      </xs:choice>
      <xs:element ref="embeddedSupportEquipDescr" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="materialUsage"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="supportEquipDescrGroupElemType">
    <xs:sequence>
      <xs:element ref="supportEquipDescr" maxOccurs="unbounded"/>
      <xs:element ref="footnote" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="symbolElemType">
    <xs:attribute ref="infoEntityIdent" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="reproductionWidth"/>
    <xs:attribute ref="reproductionHeight"/>
    <xs:attribute ref="reproductionScale"/>
    <xs:attribute ref="applicRefId"/>
    <!-- CPF 2021-005EPWG R3: replaced xlink:XLINKATT1 group reference with W3C XML XLink attributes; 20250930 JS -->
    <xs:attribute ref="xlink:type" fixed="simple"/>
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:title"/>
    <xs:attribute ref="xlink:show" fixed="embed"/>
    <xs:attribute ref="xlink:actuate" fixed="onLoad"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="systemBreakdownCodeElemType" mixed="true">
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="systemIdentElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="systemLocationElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="systemNameElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="systemPositionElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="tableElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice>
        <xs:element ref="tgroup" maxOccurs="unbounded"/>
        <xs:element ref="graphic" maxOccurs="unbounded"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="tabstyle"/>
    <xs:attribute ref="tocentry"/>
    <xs:attribute ref="frame"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="orient"/>
    <xs:attribute ref="pgwide"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskCategoryElemType">
    <xs:attribute ref="taskCategoryCode" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskDefinitionAltsElemType">
    <xs:sequence>
      <xs:element ref="taskDefinition" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskDefinitionElemType">
    <xs:sequence>
      <xs:element ref="task"/>
      <xs:element ref="rqmtSource" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="preliminaryRqmts" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:choice minOccurs="0">
        <xs:element ref="equipGroup"/>
        <xs:element ref="name"/>
      </xs:choice>
      <xs:element ref="supervisorLevel" minOccurs="0"/>
      <xs:element ref="limit" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="relatedTask" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="taskIdent" use="required"/>
    <xs:attribute ref="taskCode"/>
    <xs:attribute ref="worthinessLimit"/>
    <xs:attribute ref="reducedMaint"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attribute ref="skillType"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskDescrElemType">
    <xs:sequence>
      <xs:element ref="simplePara" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="taskDurationElemType">
    <xs:attribute ref="unitOfMeasure" use="required"/>
    <xs:attribute ref="startupDuration" use="required"/>
    <xs:attribute ref="procedureDuration" use="required"/>
    <xs:attribute ref="closeupDuration" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskElemType">
    <xs:sequence>
      <xs:element ref="taskTitle" minOccurs="0"/>
      <xs:element ref="taskDescr"/>
      <xs:element ref="taskMarker" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="taskGroupElemType">
    <xs:sequence>
      <xs:element ref="taskItem" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="taskItemElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:element ref="task" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="taskSeqNumber" use="required"/>
    <xs:attribute ref="taskName" use="required"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="taskMarkerElemType">
    <xs:attribute ref="markerType" use="required"/>
  </xs:complexType>
  <xs:complexType name="tbodyElemType">
    <xs:sequence>
      <xs:element ref="row" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="valign" default="top"/>
  </xs:complexType>
  <xs:complexType name="techDataElemType">
    <xs:sequence>
      <xs:element ref="sparePartClass" minOccurs="0"/>
      <xs:element ref="partUsage" minOccurs="0"/>
      <xs:element ref="specDocument" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="quantity" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="physicalSecurityPilferageCode" minOccurs="0"/>
      <xs:element ref="fitmentCode" minOccurs="0"/>
      <xs:element ref="unitOfIssue" minOccurs="0"/>
      <xs:element ref="unitOfIssueQualificationSegment" minOccurs="0"/>
      <xs:element ref="specialStorage" minOccurs="0"/>
      <xs:element ref="calibrationMarker" minOccurs="0"/>
      <xs:element ref="placardText" minOccurs="0"/>
      <!-- CPF 2020-030US R8: added hazard branch to CIR; added choice of hazardousClass or hazards 20231017 JS -->
      <xs:choice>
        <xs:element ref="hazardousClass" minOccurs="0"/>
        <xs:element ref="hazards" minOccurs="0"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="etopsFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="techStandardElemType">
    <xs:sequence>
      <xs:choice>
        <xs:element ref="authorityInfoAndTp"/>
        <xs:element ref="authorityInfo"/>
        <xs:element ref="techPubBase"/>
      </xs:choice>
      <xs:element ref="authorityExceptions"/>
      <xs:element ref="authorityNotes"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="temperatureElemType">
    <xs:sequence>
      <xs:element ref="minTemperature" minOccurs="0"/>
      <xs:element ref="maxTemperature" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyDefinitionElemType definition; 20231018 JS -->
  <xs:complexType name="terminologyDefinitionElemType">
    <xs:sequence>
      <xs:element ref="terminologyPara" minOccurs="1" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyIdentElemType definition; 20231018 JS -->
  <xs:complexType name="terminologyIdentElemType">
    <xs:attribute ref="terminologyIdentNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRefElemType; 20231018 JS -->
  <xs:complexType name="terminologyRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="terminologyIdentNumber" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyParaElemType definition; 20231018 JS -->
  <xs:complexType name="terminologyParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="inlineSignificantData"/>
      <xs:element ref="changeInline"/>
      <xs:element ref="symbol"/>
      <xs:element ref="verbatimText"/>
      <xs:group ref="subOrSuperScriptElemGroup"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="randomList"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRepositoryElemType definition; 20231018 JS -->
  <xs:complexType name="terminologyRepositoryElemType">
    <xs:sequence>
      <xs:element ref="terminologySpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologySpecElemType definition; 20231018 JS -->
  <xs:complexType name="terminologySpecElemType">
    <xs:sequence>
      <xs:element ref="terminologyIdent"/>
      <xs:element ref="terminologyTerm"/>
      <xs:element ref="terminologyDefinition"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="termType" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyTermElemType definition; 20231018 JS -->
  <xs:complexType name="terminologyTermElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="subOrSuperScriptElemGroup"/>
      <xs:element ref="symbol"/>
    </xs:choice>
    <xs:attribute ref="internalRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
  </xs:complexType>
  <xs:complexType name="testDescrElemType">
    <xs:sequence>
      <xs:element ref="testName"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="testParametersElemType">
    <xs:attribute ref="from"/>
    <xs:attribute ref="to"/>
    <xs:attribute ref="unitOfMeasure"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="testProcedureElemType">
    <xs:sequence>
      <xs:element ref="refs"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="tfootElemType">
    <xs:sequence>
      <xs:element ref="colspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="row" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="valign" default="top"/>
  </xs:complexType>
  <xs:complexType name="tgroupElemType">
    <xs:sequence>
      <xs:element ref="colspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="spanspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="thead" minOccurs="0"/>
      <xs:element ref="tfoot" minOccurs="0"/>
      <xs:element ref="tbody"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="cols" use="required"/>
    <xs:attribute ref="tgstyle"/>
    <xs:attribute ref="colsep"/>
    <xs:attribute ref="rowsep"/>
    <xs:attribute ref="align" default="left"/>
    <xs:attribute ref="charoff"/>
    <xs:attribute ref="char"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="theadElemType">
    <xs:sequence>
      <xs:element ref="colspec" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="row" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="valign" default="bottom"/>
  </xs:complexType>
  <xs:complexType name="thresholdElemType">
    <xs:sequence>
      <xs:element ref="thresholdValue"/>
      <xs:element ref="tolerance" minOccurs="0" maxOccurs="2"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="thresholdUnitOfMeasure" use="required"/>
    <xs:attribute ref="thresholdFrequencyStartType" use="optional"/>
    <xs:attribute ref="thresholdType"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-036FR R6: Added the new optional project-configurable attribute thresholdFrequencyStartType; 20221207 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="thresholdIntervalElemType" mixed="true">
    <xs:attribute ref="thresholdUnitOfMeasure" use="required"/>
  </xs:complexType>
  <xs:complexType name="thumbTabTextElemType" mixed="true">
    <xs:group ref="restrictedInlineTextElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="timeLimitCategoryElemType">
    <xs:attribute ref="timeLimitCategoryValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="timeLimitElemType">
    <xs:choice>
      <xs:element ref="limitType" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="timeLimitInfoElemType">
    <xs:sequence>
      <xs:element ref="equipGroup"/>
      <xs:element ref="reqQuantity" minOccurs="0"/>
      <xs:element ref="timeLimitCategory" minOccurs="0"/>
      <xs:element ref="timeLimit" maxOccurs="unbounded"/>
      <!-- CPF 2015-033FR R6: Added the optional and repeatable element zoneRef to timeLimitInfo element; 20221123 JS -->
      <xs:element ref="zoneRef" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2015-035FR R7: Added the optional and repeatable element rqmtSource to timelimitinfo and inspectionDefinition elements; 20221123 JS -->
      <xs:element ref="rqmtSource" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2019-010IT R4: added refs to timeLimitInfoElemType element; 20231019 JS -->
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="timeLimitIdent" use="required"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="titleElemType" mixed="true">
    <xs:group ref="textElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toEquipElemType">
    <xs:sequence>
      <xs:group ref="fromAndToEquipElemGroup"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="tocEntryElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:sequence>
          <xs:element ref="dmRef"/>
          <xs:element ref="numberOfPages" minOccurs="0"/>
        </xs:sequence>
        <xs:sequence>
          <xs:element ref="pmRef"/>
          <xs:element ref="numberOfPages" minOccurs="0"/>
        </xs:sequence>
        <xs:sequence>
          <xs:element ref="externalPubRef"/>
          <xs:element ref="numberOfPages" minOccurs="0"/>
        </xs:sequence>
        <xs:element ref="tocEntry"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="tocListElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="tocEntry" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="toleranceElemType">
    <xs:attribute ref="toleranceValue" use="required"/>
    <xs:attribute ref="toleranceType" default="plusorminus"/>
    <xs:attribute ref="thresholdUnitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="toolAltsElemType">
    <xs:sequence>
      <xs:element ref="tool" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolElemType">
    <xs:sequence>
      <xs:element ref="itemDescr"/>
      <xs:element ref="functionalPhysicalAreaRef" minOccurs="0"/>
      <xs:element ref="rcmdQuantity" minOccurs="0"/>
      <xs:element ref="packaging" minOccurs="0"/>
      <xs:element ref="taskCategory" minOccurs="0"/>
      <xs:element ref="simpleRemark" minOccurs="0"/>
      <xs:element ref="internalRef" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="altNumber"/>
    <xs:attribute ref="deliveredSpecificationFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolIdentElemType">
    <xs:attribute ref="toolNumber" use="required"/>
    <xs:attribute ref="manufacturerCodeValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="toolNumber" use="required"/>
    <xs:attribute ref="manufacturerCodeValue"/>
    <xs:attribute ref="specific"/>
    <xs:attribute ref="toolAltFlag"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolRefGroupElemType">
    <xs:sequence>
      <xs:element ref="toolRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="toolRefType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolRepositoryElemType">
    <xs:sequence>
      <xs:element ref="toolSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolSpecElemType">
    <xs:sequence>
      <xs:element ref="toolIdent"/>
      <xs:element ref="itemIdentData"/>
      <xs:element ref="procurementData"/>
      <xs:element ref="techData"/>
      <xs:element ref="toolRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2018-008AA R2: Set minOccurs attribute to zero on the toolAlts element; 20221123 JS -->
      <xs:element ref="toolAlts" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolsListCodeElemType" mixed="true">
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="toolsListElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="toolsListGroup" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="skillLevelCode"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="toolsListGroupElemType">
    <xs:sequence>
      <xs:element ref="toolsListCode"/>
      <xs:element ref="maintLevel"/>
      <xs:element ref="name"/>
      <xs:element ref="natoStockNumber"/>
      <xs:element ref="toolRef"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="toolsRefsElemType">
    <xs:sequence>
      <xs:element ref="internalRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="totalQuantityElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="tradeElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="trainingStepElemType">
    <xs:sequence>
      <xs:element ref="contentDescription" minOccurs="0"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="dmRef"/>
        <xs:element ref="dmSegmentRef"/>
      </xs:choice>
      <xs:element ref="extraResources" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="transportElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="transverseLinkElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="electricalEquipConnection" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="triggerElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
      <xs:element ref="threshold" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="occurrenceTrigger"/>
    <xs:attribute ref="releaseEvent"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="twistElemType" mixed="true">
    <xs:attribute ref="twistingType"/>
  </xs:complexType>
  <xs:complexType name="twistGroupElemType">
    <xs:sequence>
      <xs:element ref="twist" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="typeDesignationElemType" mixed="true"/>
  <xs:complexType name="unitOfIssueElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="unitOfIssueQualificationSegmentElemType">
    <xs:sequence>
      <xs:element ref="quantityPerUnit"/>
    </xs:sequence>
    <xs:attribute ref="unitOfMeasure" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="unverifiedElemType"/>
  <xs:complexType name="updateAddressElemType">
    <xs:sequence>
      <xs:element ref="updateIdent"/>
      <xs:element ref="issueDate"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="updateCodeElemType">
    <xs:attribute ref="objectIdentCode" use="required"/>
    <xs:attribute ref="modelIdentCode" use="required"/>
    <xs:attribute ref="systemDiffCode" use="required"/>
    <xs:attribute ref="systemCode" use="required"/>
    <xs:attribute ref="subSystemCode" use="required"/>
    <xs:attribute ref="subSubSystemCode" use="required"/>
    <xs:attribute ref="assyCode" use="required"/>
    <xs:attribute ref="disassyCode" use="required"/>
    <xs:attribute ref="disassyCodeVariant" use="required"/>
    <xs:attribute ref="infoCode" use="required"/>
    <xs:attribute ref="infoCodeVariant" use="required"/>
    <xs:attribute ref="itemLocationCode" use="required"/>
  </xs:complexType>
  <xs:complexType name="updateElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="insertObjectGroup"/>
      <xs:element ref="replaceObjectGroup"/>
      <xs:element ref="deleteObjectGroup"/>
      <xs:element ref="reinstateObjectGroup"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="updateIdentAndStatusSectionElemType">
    <xs:sequence>
      <xs:element ref="updateAddress"/>
      <xs:element ref="updateStatus"/>
      <xs:element ref="targetDmStatus"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="updateIdentElemType">
    <xs:sequence>
      <xs:element ref="identExtension" minOccurs="0"/>
      <xs:element ref="updateCode"/>
      <xs:element ref="language"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="updateStatusElemType">
    <xs:sequence>
      <xs:element ref="sourceDmIdent"/>
      <xs:element ref="targetDmIssueInfo"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="originator"/>
      <xs:element ref="brexDmRef"/>
      <xs:element ref="qualityAssurance" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="usableOnCodeAssyElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="usableOnCodeEquipElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="usageElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="userEntryElemType">
    <xs:sequence>
      <xs:element ref="enabledState" minOccurs="0"/>
      <xs:element ref="prompt"/>
      <xs:choice>
        <xs:element ref="globalPropertyRef"/>
        <xs:element ref="variableRef"/>
      </xs:choice>
      <xs:element ref="default" minOccurs="0"/>
      <xs:element ref="validate" minOccurs="0"/>
      <xs:element ref="pushButton" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="mandatory"/>
    <xs:attribute ref="dataEntryFieldLength"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="validateElemType">
    <xs:sequence>
      <xs:element ref="expression"/>
    </xs:sequence>
    <xs:attribute ref="errorMessage"/>
  </xs:complexType>
  <xs:complexType name="variableDeclarationsElemType">
    <xs:sequence>
      <xs:element ref="variable" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="variableElemType">
    <xs:sequence>
      <xs:choice minOccurs="0">
        <xs:element ref="dialog"/>
        <xs:element ref="dialogAlts"/>
      </xs:choice>
      <xs:element ref="initialize" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="variableName" use="required"/>
    <xs:attribute ref="variableDescr"/>
    <xs:attribute ref="productConfigurationFlag"/>
    <xs:attribute ref="valueType"/>
    <xs:attribute ref="valuePrecision"/>
    <xs:attribute ref="variableScope"/>
  </xs:complexType>
  <xs:complexType name="variablePostSetElemType">
    <xs:sequence>
      <xs:element ref="assertion"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="variablePreSetElemType">
    <xs:sequence>
      <xs:element ref="assertion"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="variableRefElemType">
    <xs:attribute ref="variableName" use="required"/>
  </xs:complexType>
  <xs:complexType name="verbatimTextElemType" mixed="true">
    <xs:attribute ref="verbatimStyle"/>
    <xs:attribute ref="xml:space" fixed="preserve"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-026EPWG R5: added fixed attribute from XML namespace set to preserve; JS 20180522 -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="viewLocationElemType" mixed="true">
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="voltageElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="wallThicknessElemType" mixed="true">
    <xs:attribute ref="unitOfMeasure"/>
  </xs:complexType>
  <xs:complexType name="warningAndCautionParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="attentionText"/>
      <xs:element ref="attentionRandomList"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningElemType">
    <xs:sequence>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="warningAndCautionPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="warningType"/>
    <xs:attribute ref="internalRefId"/>
    <xs:attribute ref="vitalWarningFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningIdentElemType">
    <xs:attribute ref="warningIdentNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningMalfunctionAltsElemType">
    <xs:sequence>
      <xs:element ref="warningMalfunction" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningRefElemType">
    <xs:sequence>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="warningIdentNumber" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningRepositoryElemType">
    <xs:sequence>
      <xs:element ref="warningSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningSpecElemType">
    <xs:sequence>
      <xs:element ref="warningIdent"/>
      <xs:element ref="symbol" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="warningAndCautionPara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningsAndCautionsElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="warning" maxOccurs="unbounded"/>
        <xs:element ref="caution" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="caution" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="warningsAndCautionsRefElemType">
    <xs:choice>
      <xs:sequence>
        <xs:element ref="warningRef" maxOccurs="unbounded"/>
        <xs:element ref="cautionRef" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="cautionRef" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="wireAltsElemType">
    <xs:sequence>
      <xs:element ref="wire" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="wireCodeElemType">
    <xs:sequence>
      <xs:element ref="wireType"/>
      <xs:element ref="wireGauge" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wireConnectionCodeElemType">
    <xs:sequence>
      <xs:element ref="screenOrder" minOccurs="0"/>
      <xs:element ref="specialConnection" minOccurs="0"/>
      <xs:element ref="electricalPotential"/>
      <xs:element ref="potentialConnectionsOrder" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wireConnectionElemType">
    <xs:sequence>
      <xs:element ref="fromEquip"/>
      <xs:element ref="toEquip" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wireElemType">
    <xs:sequence>
      <xs:element ref="wireIdent"/>
      <xs:element ref="wireConnection"/>
      <xs:element ref="wireInfo" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="wireState"/>
    <xs:attribute ref="changeInfo"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="wireGaugeElemType" mixed="true">
    <xs:attribute ref="wireGaugeType" use="required"/>
  </xs:complexType>
  <xs:complexType name="wireGroupElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="wire"/>
      <xs:element ref="wireAlts"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="wireIdentElemType">
    <xs:sequence>
      <xs:element ref="circuitIdent" minOccurs="0"/>
      <xs:element ref="wireNumber"/>
      <xs:element ref="sectionIdent" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="vendorInfoAttGroup"/>
  </xs:complexType>
  <xs:complexType name="wireInfoElemType">
    <xs:sequence>
      <xs:element ref="wireCode" minOccurs="0"/>
      <xs:element ref="partNumber" minOccurs="0"/>
      <xs:element ref="harnessIdent" minOccurs="0"/>
      <xs:element ref="wireSeqNumber" minOccurs="0"/>
      <xs:element ref="circuitIdent" minOccurs="0"/>
      <xs:element ref="sectionIdent" minOccurs="0"/>
      <xs:element ref="screenGroup" minOccurs="0"/>
      <xs:element ref="twistGroup" minOccurs="0"/>
      <xs:element ref="coaxialCableFlag" minOccurs="0"/>
      <xs:element ref="triaxialCableFlag" minOccurs="0"/>
      <xs:element ref="emcCode" minOccurs="0"/>
      <xs:element ref="length" minOccurs="0"/>
      <xs:element ref="wireColor" minOccurs="0"/>
      <xs:element ref="signalInfo" minOccurs="0"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="routing" minOccurs="0"/>
      <xs:element ref="wireRoute" minOccurs="0"/>
      <xs:element ref="restriction" minOccurs="0"/>
      <xs:element ref="nextHigherAssy" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
      <xs:element ref="changeAuthorityDataGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wireInstallationCodeElemType">
    <xs:sequence>
      <xs:element ref="preparationInfo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="finishingInfo" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wireMaterialElemType">
    <xs:sequence>
      <xs:element ref="partNumber"/>
      <xs:element ref="altIdentGroup" minOccurs="0"/>
      <xs:element ref="wireCode" minOccurs="0"/>
      <xs:element ref="numberOfCores" minOccurs="0"/>
      <xs:element ref="size" minOccurs="0"/>
      <xs:element ref="mass" minOccurs="0"/>
      <xs:element ref="wireColor" minOccurs="0"/>
      <xs:element ref="outerJacketColor" minOccurs="0"/>
      <xs:element ref="outerDiameter" minOccurs="0"/>
      <xs:element ref="resistance" minOccurs="0"/>
      <xs:element ref="voltage" minOccurs="0"/>
      <xs:element ref="amperage" minOccurs="0"/>
      <xs:element ref="temperature" minOccurs="0"/>
      <xs:element ref="screenCount" minOccurs="0"/>
      <xs:element ref="coaxialCableFlag" minOccurs="0"/>
      <xs:element ref="triaxialCableFlag" minOccurs="0"/>
      <xs:element ref="frequencyCharacteristics" minOccurs="0"/>
      <xs:element ref="functionalDescrRef" minOccurs="0"/>
      <xs:element ref="illustrationRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="wireMaterialGroupElemType">
    <xs:sequence>
      <xs:element ref="wireMaterial" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wiringDataElemType">
    <xs:sequence>
      <xs:element ref="wireGroup" minOccurs="0"/>
      <xs:element ref="harnessGroup" minOccurs="0"/>
      <xs:element ref="electricalEquipGroup" minOccurs="0"/>
      <xs:element ref="standardPartGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wiringFieldsElemType">
    <xs:sequence>
      <xs:element ref="descrWire" minOccurs="0"/>
      <xs:element ref="descrHarness" minOccurs="0"/>
      <xs:element ref="descrElectricalEquip" minOccurs="0"/>
      <xs:element ref="descrStandardPartGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="wiringPossibleCauseElemType">
    <xs:sequence>
      <xs:element ref="wiringPossibleCauseFrom"/>
      <xs:element ref="wiringPossibleCauseTo" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="wiringPossibleCauseFromElemType">
    <xs:group ref="wiringPossibleCauseGroup"/>
  </xs:complexType>
  <xs:complexType name="wiringPossibleCauseToElemType">
    <xs:group ref="wiringPossibleCauseGroup"/>
  </xs:complexType>
  <xs:complexType name="workAreaLocationGroupElemType">
    <xs:sequence>
      <xs:element ref="zoneRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="accessPointRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="workLocation" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="workLocationElemType" mixed="true">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="workArea"/>
        <xs:element ref="installationLocation"/>
        <xs:element ref="functionalItemRef"/>
        <xs:element ref="accessPointRef"/>
        <xs:element ref="productItem"/>
      </xs:choice>
      <xs:choice minOccurs="0">
        <xs:element ref="internalRef"/>
        <xs:element ref="refs"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="yesAnswerElemType">
    <xs:attribute ref="nextActionRefId" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="yesNoAnswerElemType">
    <xs:sequence>
      <xs:element ref="yesAnswer"/>
      <xs:element ref="noAnswer"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="zoneAltsElemType">
    <xs:sequence>
      <xs:element ref="zone" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneElemType">
    <xs:sequence>
      <xs:element ref="itemDescr"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="zoneSide" minOccurs="0"/>
      <xs:element ref="boundaryFrom" minOccurs="0"/>
      <xs:element ref="boundaryTo" minOccurs="0"/>
      <xs:element ref="zoneRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="internalRef" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="altNumber"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneGroupElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="zoneRef" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="zoneIdentElemType">
    <xs:attribute ref="zoneNumber" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneRefElemType">
    <xs:sequence>
      <xs:element ref="name" minOccurs="0"/>
      <xs:element ref="shortName" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="zoneNumber"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="lsarData"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneRefGroupElemType">
    <xs:sequence>
      <xs:element ref="zoneRef" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="zoneRefType" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneRepositoryElemType">
    <xs:sequence>
      <xs:element ref="zoneSpec" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneSideElemType">
    <xs:attribute ref="zoneSideValue" use="required"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="zoneSpecElemType">
    <xs:sequence>
      <xs:element ref="zoneIdent"/>
      <xs:element ref="zoneRefGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="zoneAlts"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="zoneType"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="icnMetadataFileElemType">
    <xs:sequence>
      <xs:element ref="rdf:Description" minOccurs="0"/>
      <xs:element ref="imfIdentAndStatusSection"/>
      <xs:element ref="imfContent" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="imfIdentAndStatusSectionElemType">
    <xs:sequence>
      <xs:element ref="imfAddress"/>
      <xs:element ref="imfStatus"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="imfAddressElemType">
    <xs:sequence>
      <xs:element ref="imfIdent"/>
      <xs:element ref="imfAddressItems"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="imfAddressItemsElemType">
    <xs:sequence>
      <xs:element ref="icnTitle"/>
      <xs:element ref="legacyIdentGroup" minOccurs="0"/>
      <xs:element ref="issueDate" minOccurs="0"/>
      <xs:element ref="icnKeywordGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnAssociatedControllerOtherSheetType">
    <xs:attribute ref="icnAssociatedControllerRefIdent" use="required"/>
    <xs:attribute ref="offSheetIcnBaseName" use="required"/>
    <xs:attribute ref="offSheetIcnIssueNumber"/>
    <xs:attribute ref="offSheetIcnSecurityClassification"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnAssociatedControllerThisSheetType">
    <xs:attribute ref="icnAssociatedControllerRefId" use="required"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnComponentElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="dmRef"/>
      <xs:element ref="catalogSeqNumberRef"/>
    </xs:choice>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="icnObjectIdents" use="required"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnConnectionElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="dmRef"/>
      <xs:element ref="catalogSeqNumberRef"/>
    </xs:choice>
    <xs:attribute ref="icnConnectedFromRefId" use="required"/>
    <xs:attribute ref="icnConnectedToRefId" use="required"/>
    <xs:attribute ref="icnConnectionPathObjectIdents"/>
    <xs:attribute ref="icnConnectionDirection" use="required"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnControllerElemType">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="icnAssociatedControllerThisSheet"/>
        <xs:element ref="icnAssociatedControllerOtherSheet"/>
      </xs:choice>
      <xs:element ref="icnPosition" minOccurs="1" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="dmRef"/>
        <xs:element ref="catalogSeqNumberRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="icnObjectIdents" use="required"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnFlowElemType">
    <xs:choice minOccurs="1" maxOccurs="unbounded">
      <xs:element ref="icnComponent"/>
      <xs:element ref="icnController"/>
      <xs:element ref="icnOneWayController"/>
      <xs:element ref="icnOffSheet"/>
      <xs:element ref="icnConnection"/>
    </xs:choice>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOffSheetConnectionElemType">
    <xs:attribute ref="icnComponentRefId" use="required"/>
    <xs:attribute ref="offSheetComponentRefIdent" use="required"/>
    <xs:attribute ref="icnConnectionDirection" use="required"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOffSheetTargetElemType">
    <xs:sequence>
      <xs:element ref="icnOffSheetConnection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="dmRef" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="offSheetIcnBaseName" use="required"/>
    <xs:attribute ref="offSheetIcnIssueNumber"/>
    <xs:attribute ref="offSheetIcnSecurityClassification"/>
    <xs:attribute ref="offSheetRefIdent" use="required"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOffSheetElemType">
    <xs:sequence>
      <xs:element ref="icnOffSheetTarget" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="icnObjectIdents" use="required"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOneWayControllerElemType">
    <xs:sequence>
      <xs:element ref="icnOneWayInConnector"/>
      <xs:element ref="icnOneWayOutConnector"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="dmRef"/>
        <xs:element ref="catalogSeqNumberRef"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="icnObjectIdents" use="required"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOneWayInConnectorType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnOneWayOutConnectorType">
    <xs:attribute ref="id" use="required"/>
  </xs:complexType>
  <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
  <xs:complexType name="icnPositionType">
    <xs:attribute ref="id" use="required"/>
    <xs:attribute ref="icnPositionIdents" use="required"/>
  </xs:complexType>
  <xs:complexType name="icnTitleElemType" mixed="true">
    <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
  </xs:complexType>
  <xs:complexType name="icnKeywordGroupElemType">
    <xs:sequence>
      <xs:element ref="icnKeyword" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="imfCodeElemType">
    <xs:attribute ref="imfIdentIcn" use="required"/>
  </xs:complexType>
  <xs:complexType name="icnVariationElemType">
    <xs:sequence>
      <xs:element ref="icnInfoItemGroup" minOccurs="0"/>
      <xs:element ref="icnContents" minOccurs="0"/>
      <!-- CPF 2023-001US R6: The vector graphic "Wire/Fluid system tracing" functionality by augmenting the ICN metadata file. - Added element ref; 20260312 BS -->
      <xs:element minOccurs="0" ref="icnFlow"/>
      <xs:element ref="icnSupportingFiles" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="fileExtension"/>
  </xs:complexType>
  <xs:complexType name="imfContentElemType">
    <xs:sequence>
      <xs:element ref="icnVariation" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="imfIdentElemType">
    <xs:sequence>
      <xs:element ref="imfCode"/>
      <xs:element ref="issueInfo"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="imfStatusElemType">
    <xs:sequence>
      <xs:element ref="security"/>
      <!-- CPF 2019-001EPWG R5: added new element controlAuthorityGroup; 20190122 JS -->
      <xs:element ref="controlAuthorityGroup" minOccurs="0"/>
      <xs:element ref="dataRestrictions" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="responsiblePartnerCompany"/>
      <xs:element ref="originator"/>
      <xs:element ref="techStandard" minOccurs="0"/>
      <xs:element ref="brexDmRef" minOccurs="0"/>
      <xs:element ref="qualityAssurance" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="systemBreakdownCode"/>
        <xs:element ref="functionalItemCode"/>
        <xs:element ref="functionalItemRef"/>
      </xs:choice>
      <xs:element ref="reasonForUpdate" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="legacyIdentGroupElemType">
    <xs:sequence>
      <xs:element ref="legacyIdent" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="legacyIdentElemType" mixed="true">
    <xs:attribute ref="legacyOrigin"/>
  </xs:complexType>
  <xs:complexType name="icnSupportingFilesElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="icnSourceFiles"/>
      <xs:element ref="icnResourceFiles"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="icnSourceFilesElemType">
    <xs:sequence>
      <xs:element ref="icnSupportingFilesDescr" minOccurs="0"/>
      <xs:element ref="refs"/>
    </xs:sequence>
    <xs:attribute ref="icnSourceFileType" use="required"/>
  </xs:complexType>
  <xs:complexType name="icnResourceFilesElemType">
    <xs:sequence>
      <xs:element ref="icnSupportingFilesDescr" minOccurs="0"/>
      <xs:element ref="refs"/>
    </xs:sequence>
    <xs:attribute ref="icnResourceFileType" use="required"/>
  </xs:complexType>
  <xs:complexType name="icnSupportingFilesDescrElemType">
    <xs:sequence>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="icnContentsElemType">
    <xs:sequence>
      <xs:element ref="icnObjectGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="icnObjectGroupElemType">
    <xs:sequence>
      <xs:element ref="icnObject" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="icnObjectElemType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="icnObject"/>
      <xs:element ref="internalRef"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="catalogSeqNumberRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attribute ref="icnObjectIdent"/>
    <xs:attribute ref="icnObjectName"/>
    <xs:attribute ref="icnObjectType"/>
    <xs:attribute ref="icnObjectTitle"/>
    <xs:attribute ref="objectDescr"/>
    <xs:attribute ref="objectCoordinates"/>
  </xs:complexType>
  <xs:complexType name="icnInfoItemGroupElemType">
    <xs:sequence>
      <xs:element ref="icnInfoItem" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="icnInfoItemElemType">
    <xs:sequence>
      <xs:element ref="simplePara" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="icnInfoItemType" use="required"/>
  </xs:complexType>
  <xs:complexType name="techNameElemType" mixed="true">
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="infoNameElemType" mixed="true">
    <xs:attributeGroup ref="securityAttGroup"/>
  </xs:complexType>
  <xs:complexType name="softwareClassificationElemType">
    <xs:attribute ref="softwareClassificationValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="softwareCustomizationStatusElemType">
    <xs:attribute ref="softwareCustomizationStatusValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sourcingTypeElemType">
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="sourcingTypeValue" use="required"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="actionAltsElemType">
    <xs:sequence>
      <xs:element ref="action" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="isolationStepQuestionElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="superScript"/>
      <xs:element ref="subScript"/>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="changeAuthorityDataGroupElemType">
    <xs:sequence>
      <xs:element ref="changeAuthorityData" minOccurs="1" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="groundingTypeElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="workAreaElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="shortNameElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="descrElemType" mixed="true">
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:group name="attentionElemGroup">
    <xs:sequence>
      <xs:group ref="warningAndCautionElemGroup"/>
      <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="attentionText">
    <xs:choice>
      <xs:element ref="functionalItemRef"/>
      <xs:element ref="circuitBreakerRef"/>
      <xs:element ref="controlIndicatorRef"/>
      <!-- CPF 2020-030US R8: added hazard branch to CIR, added suppyRef element; 20231017 JS -->
      <xs:element ref="supplyRef"/>
      <xs:element ref="inlineSignificantData"/>
      <xs:element ref="quantity"/>
      <xs:element ref="zoneRef"/>
      <xs:element ref="accessPointRef"/>
      <xs:element ref="identNumber"/>
      <xs:element ref="internalRef"/>
      <xs:element ref="changeInline"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="symbol"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRef element; 20231018 JS -->
      <xs:element ref="terminologyRef"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="caption"/>
      <xs:element ref="verbatimText"/>
      <!-- CPF 2017-029BRWG R7: added brDecisionRef brDecisionPointRef sourceDocRef to group; 20190315 JS -->
      <xs:element ref="brDecisionRef"/>
      <xs:element ref="brDecisionPointRef"/>
      <xs:element ref="sourceDocRef"/>
    </xs:choice>
  </xs:group>
  <xs:group name="crewDrillIntroductionElemGroup">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="thumbTabText" minOccurs="0"/>
      <xs:group ref="attentionElemGroup"/>
      <xs:element ref="crewMemberGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="para"/>
        <xs:group ref="fmftElemGroup"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:group name="crewDrillStepElemGroup">
    <xs:choice>
      <xs:element ref="crewDrillStep"/>
      <xs:choice>
        <xs:sequence>
          <xs:element ref="if"/>
          <xs:element ref="elseIf" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:element ref="case"/>
      </xs:choice>
    </xs:choice>
  </xs:group>
  <xs:group name="dialogElemGroup">
    <xs:choice>
      <xs:element ref="dialog"/>
      <xs:element ref="dialogAlts"/>
      <xs:element ref="message"/>
      <xs:element ref="messageAlts"/>
    </xs:choice>
  </xs:group>
  <xs:group name="figureElemGroup">
    <xs:sequence>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="figure"/>
        <xs:element ref="figureAlts"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:group name="fmftElemGroup">
    <xs:choice>
      <xs:element ref="figure"/>
      <xs:element ref="figureAlts"/>
      <xs:element ref="multimedia"/>
      <xs:element ref="multimediaAlts"/>
      <xs:element ref="foldout"/>
      <xs:element ref="table"/>
    </xs:choice>
  </xs:group>
  <xs:group name="fromAndToEquipElemGroup">
    <xs:sequence>
      <xs:element ref="functionalItemRef"/>
      <xs:element ref="contactInfo" minOccurs="0"/>
      <xs:element ref="screenGroup" minOccurs="0"/>
      <xs:element ref="twistGroup" minOccurs="0"/>
      <xs:element ref="wireInstallationCode" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="headingElemGroup">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="captionGroup" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <!-- CPF 22020-035US R4: added circuitBreakerDescrGroup to the choice of child elements in isolationStepActionElemGroup; 20250929 JS -->
  <xs:group name="isolationStepActionElemGroup">
    <xs:choice>
      <xs:element ref="note"/>
      <xs:element ref="circuitBreakerDescrGroup"/>
      <xs:element ref="action"/>
      <xs:element ref="actionAlts"/>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
  </xs:group>
  <xs:group name="isolationStepHeadingElemGroup">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <xs:group ref="warningAndCautionElemGroup"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="listElemGroup">
    <xs:choice>
      <xs:element ref="sequentialList"/>
      <xs:element ref="randomList"/>
      <xs:element ref="definitionList"/>
    </xs:choice>
  </xs:group>
  <xs:group name="multimediaElemGroup">
    <xs:sequence>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="multimedia"/>
        <xs:element ref="multimediaAlts"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:group name="ncpElemGroup">
    <xs:choice>
      <xs:element ref="note"/>
      <xs:element ref="circuitBreakerDescrGroup"/>
      <xs:element ref="para"/>
    </xs:choice>
  </xs:group>
  <xs:group name="normalParaElemGroup">
    <xs:sequence>
      <xs:group ref="warningAndCautionElemGroup"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="ncpElemGroup"/>
        <xs:group ref="fmftElemGroup"/>
        <xs:element ref="caption"/>
      </xs:choice>
      <xs:element ref="crewDrill" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="paraContentElemGroup">
    <xs:choice>
      <xs:group ref="textElemGroup"/>
      <xs:group ref="listElemGroup"/>
      <xs:element ref="variableRef"/>
      <xs:element ref="globalPropertyRef"/>
    </xs:choice>
  </xs:group>
  <xs:group name="preparationAndFinishElemGroup">
    <xs:sequence>
      <xs:element ref="instructionIdent" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="reducedParaElemGroup">
    <xs:choice>
      <xs:element ref="inlineSignificantData"/>
      <xs:element ref="quantity"/>
      <xs:element ref="identNumber"/>
      <xs:element ref="changeInline"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="symbol"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="caption"/>
      <xs:element ref="verbatimText"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR; added terminologyRef here 20231018 JS -->
      <xs:element ref="terminologyRef"/>
    </xs:choice>
  </xs:group>
  <xs:group name="restrictedInlineTextElemGroup">
    <xs:choice>
      <xs:element ref="internalRef"/>
      <xs:element ref="indexFlag"/>
      <xs:element ref="symbol"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="footnoteRef"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="captionGroup"/>
      <xs:element ref="caption"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRef element; 20231018 JS -->
      <xs:element ref="terminologyRef"/>
    </xs:choice>
  </xs:group>
  <xs:group name="subOrSuperScriptElemGroup">
    <xs:choice>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
    </xs:choice>
  </xs:group>
  <xs:group name="sbCaptionGroup">
    <xs:all>
      <xs:element ref="caption"/>
    </xs:all>
  </xs:group>
  <xs:group name="textElemGroup">
    <xs:choice>
      <xs:element ref="functionalItemRef"/>
      <xs:element ref="circuitBreakerRef"/>
      <xs:element ref="controlIndicatorRef"/>
      <xs:element ref="inlineSignificantData"/>
      <xs:element ref="quantity"/>
      <xs:element ref="zoneRef"/>
      <xs:element ref="accessPointRef"/>
      <xs:element ref="identNumber"/>
      <xs:element ref="internalRef"/>
      <xs:element ref="indexFlag"/>
      <xs:element ref="changeInline"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="symbol"/>
      <xs:element ref="subScript"/>
      <xs:element ref="superScript"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
      <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR, added terminologyRef element; 20231018 JS -->
      <xs:element ref="terminologyRef"/>
      <xs:element ref="footnote"/>
      <xs:element ref="footnoteRef"/>
      <xs:element ref="acronym"/>
      <xs:element ref="acronymTerm"/>
      <xs:element ref="captionGroup"/>
      <xs:element ref="caption"/>
      <xs:element ref="verbatimText"/>
      <!-- CPF 2017-029BRWG R7: added brDecisionRef brDecisionPointRef sourceDocRef to group; 20190315 JS -->
      <xs:element ref="brDecisionRef"/>
      <xs:element ref="brDecisionPointRef"/>
      <xs:element ref="sourceDocRef"/>
    </xs:choice>
  </xs:group>
  <xs:group name="warningAndCautionElemGroup">
    <xs:sequence>
      <xs:element ref="warning" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="caution" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="wiringDescrElemGroup">
    <xs:sequence>
      <xs:element ref="fieldName"/>
      <xs:element ref="descr" minOccurs="0"/>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="wiringPossibleCauseGroup">
    <xs:choice>
      <xs:element ref="name"/>
      <xs:sequence>
        <xs:element ref="functionalItemRef"/>
        <xs:element ref="contactIdentification" minOccurs="0"/>
      </xs:sequence>
    </xs:choice>
  </xs:group>
  <xs:complexType name="brDocElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:sequence>
        <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="brLevelledPara" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:group ref="fmftElemGroup"/>
    </xs:choice>
    <xs:attribute ref="defaultBrSeverityLevel"/>
  </xs:complexType>
  <xs:complexType name="brLevelledParaElemType">
    <xs:sequence>
      <xs:sequence minOccurs="0">
        <xs:element ref="title" minOccurs="0"/>
        <xs:group ref="normalBrParaElemGroup" minOccurs="0"/>
      </xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="brLevelledPara"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brParaElemType">
    <xs:choice>
      <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      <xs:sequence>
        <!-- CPF 2017-029BRWG R7: made brRelatedTo optional; 20190315 JS -->
        <xs:element ref="brRelatedTo" minOccurs="0"/>
        <xs:element ref="brDecisionPointContent" minOccurs="0"/>
        <xs:element ref="brDecision" maxOccurs="unbounded"/>
        <xs:element ref="brAudit" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:group ref="fmftElemGroup" minOccurs="0" maxOccurs="unbounded"/>
    </xs:choice>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="brDecisionPointUniqueIdent" use="required"/>
    <xs:attribute ref="brDecisionPointPriority"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2017-029BRWG R7: added choice of note or sequence or fmftElemGroup; 20190315 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute authorityName from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute authorityDocument from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brRelatedToElemType">
    <xs:sequence>
      <xs:element ref="sourceDocRef"/>
      <xs:element ref="brCategoryGroup"/>
      <xs:element ref="s1000dSchemas" minOccurs="0"/>
      <xs:element ref="configAttributes" minOccurs="0"/>
      <xs:element ref="remarks" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionPointContentElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="brDecisionPointText"/>
      <xs:element ref="brDecisionPointValueGroup" minOccurs="0"/>
      <xs:element ref="brDecisionPointExplanation" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionElemType">
    <xs:sequence>
      <xs:element ref="title" minOccurs="0"/>
      <!-- CPF 2017-029BRWG R7: added note; 20190315 JS -->
      <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="brDecisionPending"/>
        <xs:choice>
          <xs:sequence>
            <xs:element ref="brDecisionText"/>
            <!-- CPF 2017-029BRWG R7: added fmftElemGroup; 20190315 JS -->
            <xs:group ref="fmftElemGroup" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="brDecisionValueGroup" minOccurs="0"/>
          </xs:sequence>
          <!-- CPF 2017-029BRWG R7: added fmftElemGroup; 20190315 JS -->
          <xs:group ref="fmftElemGroup" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="brDecisionValueGroup"/>
        </xs:choice>
      </xs:choice>
      <xs:element ref="brDecisionExplanation" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionIdentNumber"/>
    <xs:attribute ref="brexRuleFlag"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="brSeverityLevel"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionTextElemType">
    <xs:sequence>
      <!-- CPF 2017-029BRWG R7: added note; 20190315 JS -->
      <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionPendingElemType"/>
  <xs:complexType name="brDecisionExplanationElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="example" minOccurs="0"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="fmftElemGroup"/>
        <xs:element ref="caption"/>
      </xs:choice>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionPointTextElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="note" minOccurs="0"/>
      <xs:element ref="para"/>
      <xs:group ref="fmftElemGroup" minOccurs="0"/>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2017-029BRWG R7: disallowed mixed content for brDecisionPointTextElemType; 20190315 JS -->
    <!-- CPF 2017-029BRWG R7: recast as choice of note or para or fmftElemGroup; 20190315 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionPointExplanationElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="title" minOccurs="0"/>
      <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="fmftElemGroup"/>
        <xs:element ref="caption"/>
      </xs:choice>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brAuditElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2017-029BRWG R7: added brDecisionPointRef to sequence; 20190315 JS -->
      <xs:element ref="brDecisionPointRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="brAction" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="brCurrentStatus"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="brDecisionPointRefUniqueIdent"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brActionElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2017-029BRWG R7: added brDecisionPointRef to sequence; 20190315 JS -->
      <xs:element ref="brDecisionPointRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice maxOccurs="unbounded">
        <xs:element ref="title" minOccurs="0"/>
        <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:group ref="fmftElemGroup"/>
          <xs:element ref="caption"/>
        </xs:choice>
      </xs:choice>
    </xs:sequence>
    <xs:attribute ref="id"/>
    <xs:attribute ref="brDecisionPointRefUniqueIdent"/>
    <xs:attribute ref="brActionOwner" use="required"/>
    <xs:attribute ref="brActionCompleted"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute authorityName from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: deleted attribute authorityDocument from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brCurrentStatusElemType">
    <xs:sequence>
      <xs:element ref="brDecisionRef" minOccurs="0" maxOccurs="unbounded"/>
      <!-- CPF 2017-029BRWG R7: added brDecisionPointRef to sequence; 20190315 JS -->
      <xs:element ref="brDecisionPointRef" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="responsiblePartnerCompany" minOccurs="0"/>
      <xs:element ref="originator" minOccurs="0"/>
      <xs:element ref="brRequiredDate" minOccurs="0"/>
      <xs:element ref="brStatusDate" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brStatus" use="required"/>
    <xs:attribute ref="brDecisionPointRefUniqueIdent"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brRequiredDateElemType">
    <xs:attribute ref="year" use="required"/>
    <xs:attribute ref="month" use="required"/>
    <xs:attribute ref="day"/>
  </xs:complexType>
  <xs:complexType name="brStatusDateElemType">
    <xs:attribute ref="year" use="required"/>
    <xs:attribute ref="month" use="required"/>
    <xs:attribute ref="day"/>
  </xs:complexType>
  <xs:complexType name="s1000dSchemasElemType">
    <xs:attribute ref="appliccrossreftableXsd"/>
    <xs:attribute ref="brdocXsd"/>
    <xs:attribute ref="brexXsd"/>
    <xs:attribute ref="checklistXsd"/>
    <xs:attribute ref="commentXsd"/>
    <xs:attribute ref="comrepXsd"/>
    <xs:attribute ref="condcrossreftableXsd"/>
    <xs:attribute ref="containerXsd"/>
    <xs:attribute ref="crewXsd"/>
    <xs:attribute ref="ddnXsd"/>
    <xs:attribute ref="descriptXsd"/>
    <xs:attribute ref="dmlXsd"/>
    <xs:attribute ref="faultXsd"/>
    <xs:attribute ref="frontmatterXsd"/>
    <xs:attribute ref="icnmetadataXsd"/>
    <xs:attribute ref="ipdXsd"/>
    <xs:attribute ref="learningXsd"/>
    <xs:attribute ref="pmXsd"/>
    <xs:attribute ref="prdcrossreftableXsd"/>
    <xs:attribute ref="procedXsd"/>
    <xs:attribute ref="processXsd"/>
    <xs:attribute ref="sbXsd"/>
    <xs:attribute ref="schedulXsd"/>
    <xs:attribute ref="scocontentXsd"/>
    <xs:attribute ref="scormcontentpackageXsd"/>
    <xs:attribute ref="updateXsd"/>
    <xs:attribute ref="wrngdataXsd"/>
    <xs:attribute ref="wrngfldsXsd"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="sourceDocRefElemType">
    <xs:choice maxOccurs="unbounded">
      <xs:element ref="internalRef"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
    </xs:choice>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2017-029BRWG R7: made choice repeatable; 20190315 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brCategoryGroupElemType">
    <xs:sequence>
      <xs:element ref="brCategory" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brCategoryElemType">
    <xs:sequence>
      <xs:element ref="title"/>
      <xs:element ref="brCategoryDescription" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brCategoryNumber"/>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="brCategoryDescriptionElemType">
    <xs:sequence>
      <xs:element ref="para" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <!-- CPF 2017-029BRWG R7: added new element type brDecisionPointRef; 20190315 JS -->
  <xs:complexType name="brDecisionPointRefElemType">
    <xs:sequence>
      <xs:element ref="refs" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionPointUniqueIdent"/>
    <xs:attribute ref="id"/>
    <xs:attribute ref="applicRefId"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181126 JS -->
  </xs:complexType>
  <xs:complexType name="configAttributesElemType">
    <xs:attribute ref="accessPointTypeValueAttRelation"/>
    <xs:attribute ref="acronymTypeAttRelation"/>
    <xs:attribute ref="actionIdentTypeAttRelation"/>
    <xs:attribute ref="barCodeSymbologyAttRelation"/>
    <xs:attribute ref="brDecisionPointPriorityAttRelation"/>
    <xs:attribute ref="brSeverityLevelAttRelation"/>
    <xs:attribute ref="brStatusAttRelation"/>
    <xs:attribute ref="cancelCaptionAttRelation"/>
    <xs:attribute ref="caveatAttRelation"/>
    <xs:attribute ref="checkListCategoryAttRelation"/>
    <xs:attribute ref="circuitBreakerRefTypeAttRelation"/>
    <xs:attribute ref="circuitBreakerTypeAttRelation"/>
    <xs:attribute ref="colorAttRelation"/>
    <xs:attribute ref="commentPriorityCodeAttRelation"/>
    <xs:attribute ref="commercialClassificationAttRelation"/>
    <!-- CPF 2022-012PPWG R3: added controlAuthorityTypeAttRelation; 20240223 JS -->
    <xs:attribute ref="controlAuthorityTypeAttRelation"/>
    <xs:attribute ref="crewMemberTypeAttRelation"/>
    <xs:attribute ref="crewStepConditionAttRelation"/>
    <xs:attribute ref="defaultBrSeverityLevelAttRelation"/>
    <xs:attribute ref="drillTypeAttRelation"/>
    <xs:attribute ref="emphasisTypeAttRelation"/>
    <xs:attribute ref="frontMatterInfoTypeAttRelation"/>
    <xs:attribute ref="frontMatterTypeAttRelation"/>
    <xs:attribute ref="functionAttRelation"/>
    <xs:attribute ref="functionalItemRefTypeAttRelation"/>
    <xs:attribute ref="functionalItemTypeAttRelation"/>
    <xs:attribute ref="genericPropertyTypeAttRelation"/>
    <xs:attribute ref="hazardousClassValueAttRelation"/>
    <xs:attribute ref="icnInfoItemTypeAttRelation"/>
    <xs:attribute ref="icnResourceFileTypeAttRelation"/>
    <xs:attribute ref="icnSourceFileTypeAttRelation"/>
    <xs:attribute ref="installationLocationTypeAttRelation"/>
    <xs:attribute ref="internalRefTargetTypeAttRelation"/>
    <xs:attribute ref="itemCharacteristicAttRelation"/>
    <xs:attribute ref="itemOriginatorAttRelation"/>
    <xs:attribute ref="limitUnitTypeAttRelation"/>
    <xs:attribute ref="listItemPrefixAttRelation"/>
    <xs:attribute ref="lowestLevelAttRelation"/>
    <xs:attribute ref="maintLevelCodeAttRelation"/>
    <xs:attribute ref="materialUsageAttRelation"/>
    <xs:attribute ref="operationTypeAttRelation"/>
    <xs:attribute ref="partCharacteristicAttRelation"/>
    <xs:attribute ref="partStatusAttRelation"/>
    <xs:attribute ref="partUsageCodeAttRelation"/>
    <xs:attribute ref="pmEntryTypeAttRelation"/>
    <xs:attribute ref="pmTypeAttRelation"/>
    <xs:attribute ref="productCategoryAttRelation"/>
    <xs:attribute ref="productItemTypeAttRelation"/>
    <xs:attribute ref="quantityTypeAttRelation"/>
    <xs:attribute ref="quantityUnitOfMeasureAttRelation"/>
    <xs:attribute ref="referenceUsageAttRelation"/>
    <xs:attribute ref="refTypeAttRelation"/>
    <xs:attribute ref="reqCondCategoryAttRelation"/>
    <xs:attribute ref="reqTechInfoCategoryAttRelation"/>
    <xs:attribute ref="resetCaptionAttRelation"/>
    <xs:attribute ref="responseTypeAttRelation"/>
    <xs:attribute ref="sbComplianceCategoryAttRelation"/>
    <xs:attribute ref="sbImpactTypeAttRelation"/>
    <xs:attribute ref="sbMaterialTypeAttRelation"/>
    <xs:attribute ref="sbTaskCategoryAttRelation"/>
    <xs:attribute ref="sbTimeComplianceTypeAttRelation"/>
    <xs:attribute ref="sbTopicTypeAttRelation"/>
    <xs:attribute ref="scoEntryTypeAttRelation"/>
    <xs:attribute ref="securityClassificationAttRelation"/>
    <xs:attribute ref="significantParaDataTypeAttRelation"/>
    <xs:attribute ref="skillLevelCodeAttRelation"/>
    <xs:attribute ref="skillTypeAttRelation"/>
    <xs:attribute ref="softwareClassificationValueAttRelation"/>
    <xs:attribute ref="softwareCustomizationStatusValueAttRelation"/>
    <xs:attribute ref="sourceCriticalityAttRelation"/>
    <xs:attribute ref="sourceTypeCodeAttRelation"/>
    <xs:attribute ref="sourcingTypeValueAttRelation"/>
    <xs:attribute ref="submitCaptionAttRelation"/>
    <xs:attribute ref="supervisorLevelCodeAttRelation"/>
    <!-- CPF 2020-030US R8: added hazard branch to CIR; added supplementalSafetyCategoryAttRelation 20231017 JS -->
    <xs:attribute ref="supplementalSafetyCategoryAttRelation"/>
    <xs:attribute ref="supplyCategoryAttRelation"/>
    <xs:attribute ref="supplyNumberTypeAttRelation"/>
    <xs:attribute ref="taskCodeAttRelation"/>
    <!-- CPF 2020-033EPWG R13: added terminologyRepository CIR; added termTypeAttRelation 20231018 JS -->
    <xs:attribute ref="termTypeAttRelation"/>
    <xs:attribute ref="thresholdFrequencyStartTypeAttRelation"/>
    <xs:attribute ref="thresholdUnitOfMeasureAttRelation"/>
    <xs:attribute ref="updateReasonTypeAttRelation"/>
    <xs:attribute ref="verbatimStyleAttRelation"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2018-006FR R7: Added the new optional project-configurable attribute referenceUsageAttType; 20230112 JS -->
    <!-- CPF 2010-011SE R11: Added a new optional configurable attribute supplyCategory; 20221123 JS -->
    <!-- CPF 2015-036FR R6: Added the new project-configurable attribute thresholdFrequencyStartType; 20221207 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="brDecisionPointValueGroupElemType">
    <xs:sequence>
      <xs:element ref="brDecisionPointValue" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionValueSelection" use="required"/>
  </xs:complexType>
  <xs:complexType name="brDecisionPointValueElemType">
    <xs:sequence>
      <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionValueAllowed" use="required"/>
  </xs:complexType>
  <xs:complexType name="brDecisionValueGroupElemType">
    <xs:sequence>
      <xs:element ref="brDecisionValue" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="brDecisionValueElemType">
    <xs:sequence>
      <xs:element ref="para" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="brDecisionValueRegistered" use="required"/>
  </xs:complexType>
  <xs:complexType name="exampleElemType">
    <xs:choice>
      <xs:element ref="markupExample" minOccurs="1" maxOccurs="unbounded"/>
      <xs:element ref="narrativeExample" minOccurs="1" maxOccurs="unbounded"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="markupExampleElemType" mixed="true">
    <xs:sequence>
      <xs:element ref="verbatimText" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="narrativeExampleElemType" mixed="true"/>
  <!-- CPF 2022-013PPWG R5: modified simpleRefPara to include verbatimText, emphasis, inlineSignificantData; 20230726 JS -->
  <xs:complexType name="simpleRefParaElemType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="subOrSuperScriptElemGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="verbatimText"/>
      <xs:element ref="emphasis"/>
      <xs:element ref="inlineSignificantData"/>
      <xs:element ref="dmRef"/>
      <xs:element ref="pmRef"/>
      <xs:element ref="externalPubRef"/>
    </xs:choice>
    <xs:attribute ref="id"/>
    <xs:attributeGroup ref="changeAttGroup"/>
    <xs:attributeGroup ref="securityAttGroup"/>
    <xs:attribute ref="controlAuthorityRefs"/>
    <!-- CPF 2015-016AA R4: deleted attribute group authorityAttGroup from element; 20181126 JS -->
    <!-- CPF 2015-016AA R4: added reference to new attribute controlAuthorityRefs; 20181128 JS -->
  </xs:complexType>
  <xs:complexType name="derivativeClassificationElemType">
    <xs:sequence>
      <xs:element ref="classificationActionGroup" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="classificationActionElemType">
    <xs:sequence>
      <xs:element ref="valueAfterAction" minOccurs="0"/>
      <xs:element ref="businessUnit"/>
      <xs:element ref="derivativeSource"/>
    </xs:sequence>
    <xs:attribute ref="actionIdentType" use="required"/>
    <xs:attributeGroup ref="dateAttGroup"/>
  </xs:complexType>
  <xs:complexType name="classificationActionGroupElemType">
    <xs:sequence>
      <xs:element ref="classificationAction" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
  <xs:complexType name="valueAfterActionElemType">
    <xs:attribute ref="actionIdentType" use="required"/>
    <xs:attributeGroup ref="dateAttGroup"/>
  </xs:complexType>
  <xs:group name="normalBrParaElemGroup">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="brDecision"/>
        <xs:element ref="brPara"/>
        <xs:element ref="note"/>
        <xs:element ref="para"/>
        <!-- CPF 2017-029BRWG R7: added markupExample to group; 20190315 JS -->
        <xs:element ref="markupExample"/>
        <xs:group ref="fmftElemGroup"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
</xs:schema>
