<?xml version="1.0" encoding="UTF-8"?>

<!--
  $Id: plcs_psm_xmi2xsd.xsl,v 1.51 2017-07-20 10:33:33 philsp Exp $ 
  Author:       Mike Ward, Eurostep Limited 
  Owner:        Developed by Eurostep 
  Purpose:      XML Schema derived from and for the PLCS PSM. 
  Generated by: plcslib/xsl/generate_xsd/plcs_psm_xmi2xsd.xsl (Rev: 1.51)
-->
            
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:cmn="http://standards.iso.org/iso/ts/10303/-3000/-ed-1/tech/xml-schema/common"
   xmlns="http://docs.oasis-open.org/plcs/ns/plcslib/v1.0/data/plcs/plcs-psm/xml-schema/plcs-psm"
   targetNamespace="http://docs.oasis-open.org/plcs/ns/plcslib/v1.0/data/plcs/plcs-psm/xml-schema/plcs-psm"
   elementFormDefault="unqualified">
   <xsd:import schemaLocation="common.xsd"
      namespace="http://standards.iso.org/iso/ts/10303/-3000/-ed-1/tech/xml-schema/common"/>
   <!--<xsd:element name="PlcsDataContainer" type="PlcsDataContainer"/>-->
   <!--modified block based complex types-->
   <!-- These are blocks or "auxiliary" blocks with non-standard mappings. The entire xsd type is replaced with the literal xsd node sets declared below:  -->

   <xsd:complexType name="ProxyItemSelect" abstract="true">
      <!-- This is non-standard because the members of the select are nested within the referencing object rather than referenced -->
      <xsd:complexContent>
         <xsd:annotation>
            <xsd:documentation>A ProxyItemSelect is an abstract generalization of instances that are
               either ExternalItems or ExternalOwlObjects. </xsd:documentation>
         </xsd:annotation>
         <xsd:extension base="cmn:BaseObject">
            <xsd:choice>
               <xsd:element name="ExternalOwlObject" type="cmn:Reference" minOccurs="0"
                  maxOccurs="1"/>
               <xsd:element name="ExternalItem" type="cmn:Reference" minOccurs="0" maxOccurs="1"/>
            </xsd:choice>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

   <xsd:complexType name="LocalizedString">
      <!-- 
                This is non-standard because 
                1) the attribute "language" is renamed 
                2) the attribute "language" maps to an XML attribute instead of a Proxy
                3) the attribute "text" maps directly to the content of the LocalizedString element - thus LocalizedString is of type "xsd:string" not of type "Entity"
           -->
      <xsd:annotation>
         <xsd:documentation> A LocalizedString is a text based string. The language in which the the
            string is expressed is optionally identified. </xsd:documentation>
      </xsd:annotation>
      <xsd:simpleContent>
         <xsd:extension base="xsd:string">
            <xsd:attribute name="lang" type="xsd:language"/>
            <xsd:attribute name="uid" type="xsd:ID"/>
         </xsd:extension>
      </xsd:simpleContent>
   </xsd:complexType>
   <!--defined type based simple types-->
   <!--complex types corresponding to root element-->
   <xsd:complexType name="DataContainer" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A DataContainer is an abstract generalization of the root element of a
            data file. Only non-abstract specializations of the DataContainer can be instantiated.
         </xsd:documentation>
      </xsd:annotation>
   </xsd:complexType>
   <xsd:complexType name="PlcsDataContainer">
      <xsd:annotation>
         <xsd:documentation> A PlcsDataContainer is a specialization of the abstract DataContainer
            element. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:DataContainer">
            <xsd:choice minOccurs="0" maxOccurs="unbounded">
               <xsd:element name="Activity" type="Activity"/>
               <xsd:element name="ActivityActual" type="ActivityActual"/>
               <xsd:element name="ActivityMethod" type="ActivityMethod"/>
               <xsd:element name="ActivityMethodRealization" type="ActivityMethodRealization"/>
               <xsd:element name="Address" type="Address"/>
               <xsd:element name="AddressBasedLocationRepresentation"
                  type="AddressBasedLocationRepresentation"/>
               <xsd:element name="AdvisoryNote" type="AdvisoryNote"/>
               <xsd:element name="Analysis" type="Analysis"/>
               <xsd:element name="AnalysisModel" type="AnalysisModel"/>
               <xsd:element name="AnalysisRepresentationContext"
                  type="AnalysisRepresentationContext"/>
               <xsd:element name="ApplicationDomain" type="ApplicationDomain"/>
               <xsd:element name="Approval" type="Approval"/>
               <xsd:element name="ApprovingPersonOrganization" type="ApprovingPersonOrganization"/>
               <xsd:element name="Assumption" type="Assumption"/>
               <xsd:element name="AttachmentSlot" type="AttachmentSlot"/>
               <xsd:element name="AttachmentSlotDesignToPlanned"
                  type="AttachmentSlotDesignToPlanned"/>
               <xsd:element name="AttachmentSlotDesignToRealized"
                  type="AttachmentSlotDesignToRealized"/>
               <xsd:element name="AttachmentSlotOnProduct" type="AttachmentSlotOnProduct"/>
               <xsd:element name="AttachmentSlotPlannedToRealized"
                  type="AttachmentSlotPlannedToRealized"/>
               <xsd:element name="AxisPlacementMapping" type="AxisPlacementMapping"/>
               <xsd:element name="Breakdown" type="Breakdown"/>
               <xsd:element name="BreakdownContext" type="BreakdownContext"/>
               <xsd:element name="BreakdownElement" type="BreakdownElement"/>
               <xsd:element name="BreakdownElementRealization" type="BreakdownElementRealization"/>
               <xsd:element name="Certification" type="Certification"/>
               <xsd:element name="ChainBasedGeometricItemSpecificUsage"
                  type="ChainBasedGeometricItemSpecificUsage"/>
               <xsd:element name="Collection" type="Collection"/>
               <xsd:element name="CollectionMembership" type="CollectionMembership"/>
               <xsd:element name="Condition" type="Condition"/>
               <xsd:element name="ConditionalEffectivity" type="ConditionalEffectivity"/>
               <xsd:element name="ConditionEvaluation" type="ConditionEvaluation"/>
               <xsd:element name="ContextualItemShape" type="ContextualItemShape"/>
               <xsd:element name="ContextualShapeRepresentation"
                  type="ContextualShapeRepresentation"/>
               <xsd:element name="Contract" type="Contract"/>
               <xsd:element name="DatedEffectivity" type="DatedEffectivity"/>
               <xsd:element name="DecreasingResourceEvent" type="DecreasingResourceEvent"/>
               <xsd:element name="DigitalFile" type="DigitalFile"/>
               <xsd:element name="DirectedActivity" type="DirectedActivity"/>
               <xsd:element name="Document" type="Document"/>
               <xsd:element name="Effectivity" type="Effectivity"/>
               <xsd:element name="Envelope" type="Envelope"/>
               <xsd:element name="EnvironmentDefinition" type="EnvironmentDefinition"/>
               <xsd:element name="Evidence" type="Evidence"/>
               <xsd:element name="ExchangeContextClassLibrary" type="ExchangeContextClassLibrary"/>
               <xsd:element name="ExpandedUncertainty" type="ExpandedUncertainty"/>
               <xsd:element name="ExperienceGained" type="ExperienceGained"/>
               <xsd:element name="ExperienceInstance" type="ExperienceInstance"/>
               <xsd:element name="ExperienceType" type="ExperienceType"/>
               <xsd:element name="ExternalAnalysisModel" type="ExternalAnalysisModel"/>
               <xsd:element name="ExternalClass" type="ExternalClass"/>
               <xsd:element name="ExternalGeometricModel" type="ExternalGeometricModel"/>
               <xsd:element name="ExternalItem" type="ExternalItem"/>
               <xsd:element name="ExternalOwlClass" type="ExternalOwlClass"/>
               <xsd:element name="ExternalOwlObject" type="ExternalOwlObject"/>
               <xsd:element name="ExternalPropertyDefinition" type="ExternalPropertyDefinition"/>
               <xsd:element name="ExternalTypeQualifier" type="ExternalTypeQualifier"/>
               <xsd:element name="ExternalUnit" type="ExternalUnit"/>
               <xsd:element name="FunctionalBreakdown" type="FunctionalBreakdown"/>
               <xsd:element name="FunctionalBreakdownContext" type="FunctionalBreakdownContext"/>
               <xsd:element name="FunctionalElement" type="FunctionalElement"/>
               <xsd:element name="FunctionValuePair" type="FunctionValuePair"/>
               <xsd:element name="GeometricCompositionWithOperatorTransformation"
                  type="GeometricCompositionWithOperatorTransformation"/>
               <xsd:element name="GeometricCompositionWithPlacementTransformation"
                  type="GeometricCompositionWithPlacementTransformation"/>
               <xsd:element name="GeometricItemSpecificUsage" type="GeometricItemSpecificUsage"/>
               <xsd:element name="GeometricModel" type="GeometricModel"/>
               <xsd:element name="GeometricModelRelationship" type="GeometricModelRelationship"/>
               <xsd:element name="GeometricPlacementModel" type="GeometricPlacementModel"/>
               <xsd:element name="GeometricRelationshipWithOperatorTransformation"
                  type="GeometricRelationshipWithOperatorTransformation"/>
               <xsd:element name="GeometricRelationshipWithPlacementTransformation"
                  type="GeometricRelationshipWithPlacementTransformation"/>
               <xsd:element name="GlobalLocationRepresentation" type="GlobalLocationRepresentation"/>
               <xsd:element name="Hardcopy" type="Hardcopy"/>
               <xsd:element name="HierarchicalInterfaceConnection"
                  type="HierarchicalInterfaceConnection"/>
               <xsd:element name="IncreasingResourceEvent" type="IncreasingResourceEvent"/>
               <xsd:element name="InformationRight" type="InformationRight"/>
               <xsd:element name="InformationUsageRight" type="InformationUsageRight"/>
               <xsd:element name="InterfaceConnection" type="InterfaceConnection"/>
               <xsd:element name="InterfaceConnector" type="InterfaceConnector"/>
               <xsd:element name="InterfaceConnectorDesignToPlanned"
                  type="InterfaceConnectorDesignToPlanned"/>
               <xsd:element name="InterfaceConnectorDesignToRealized"
                  type="InterfaceConnectorDesignToRealized"/>
               <xsd:element name="InterfaceConnectorOccurrence" type="InterfaceConnectorOccurrence"/>
               <xsd:element name="InterfaceConnectorPlannedToRealized"
                  type="InterfaceConnectorPlannedToRealized"/>
               <xsd:element name="InterfaceDefinitionConnection"
                  type="InterfaceDefinitionConnection"/>
               <xsd:element name="InterfaceDefinitionFor" type="InterfaceDefinitionFor"/>
               <xsd:element name="InterfaceSpecification" type="InterfaceSpecification"/>
               <xsd:element name="InZone" type="InZone"/>
               <xsd:element name="ItemAssumed" type="ItemAssumed"/>
               <xsd:element name="ItemDesignAssociation" type="ItemDesignAssociation"/>
               <xsd:element name="ItemShape" type="ItemShape"/>
               <xsd:element name="ItemUsageEffectivity" type="ItemUsageEffectivity"/>
               <xsd:element name="Justification" type="Justification"/>
               <xsd:element name="LifeCycleStage" type="LifeCycleStage"/>
               <xsd:element name="Location" type="Location"/>
               <xsd:element name="LotEffectivity" type="LotEffectivity"/>
               <xsd:element name="ManagedResource" type="ManagedResource"/>
               <xsd:element name="Market" type="Market"/>
               <xsd:element name="Message" type="Message"/>
               <xsd:element name="NumericalContext" type="NumericalContext"/>
               <xsd:element name="Observation" type="Observation"/>
               <xsd:element name="ObservationConsequence" type="ObservationConsequence"/>
               <xsd:element name="ObservedEnvironment" type="ObservedEnvironment"/>
               <xsd:element name="ObservedEnvironmentToDefinition"
                  type="ObservedEnvironmentToDefinition"/>
               <xsd:element name="ObservedEnvironmentToDefinitionVersion"
                  type="ObservedEnvironmentToDefinitionVersion"/>
               <xsd:element name="ObservedEnvironmentToDefinitionView"
                  type="ObservedEnvironmentToDefinitionView"/>
               <xsd:element name="Organization" type="Organization"/>
               <xsd:element name="OrganizationalLocationIdentification"
                  type="OrganizationalLocationIdentification"/>
               <xsd:element name="OrganizationBasedLocationRepresentation"
                  type="OrganizationBasedLocationRepresentation"/>
               <xsd:element name="OrganizationType" type="OrganizationType"/>
               <xsd:element name="Part" type="Part"/>
               <xsd:element name="Person" type="Person"/>
               <xsd:element name="PersonInOrganization" type="PersonInOrganization"/>
               <xsd:element name="PersonOrOrganizationOrPersonInOrganizationInPosition"
                  type="PersonOrOrganizationOrPersonInOrganizationInPosition"/>
               <xsd:element name="PhysicalBreakdown" type="PhysicalBreakdown"/>
               <xsd:element name="PhysicalBreakdownContext" type="PhysicalBreakdownContext"/>
               <xsd:element name="PhysicalElement" type="PhysicalElement"/>
               <xsd:element name="Position" type="Position"/>
               <xsd:element name="PositionGroup" type="PositionGroup"/>
               <xsd:element name="PositionType" type="PositionType"/>
               <xsd:element name="PrecisionQualifier" type="PrecisionQualifier"/>
               <xsd:element name="PreDefinedTypeQualifier" type="PreDefinedTypeQualifier"/>
               <xsd:element name="ProbabilityNamedValue" type="ProbabilityNamedValue"/>
               <xsd:element name="Product" type="Product"/>
               <xsd:element name="ProductAsIndividual" type="ProductAsIndividual"/>
               <xsd:element name="ProductAsIndividualEffectivity"
                  type="ProductAsIndividualEffectivity"/>
               <xsd:element name="ProductBasedLocationIdentification"
                  type="ProductBasedLocationIdentification"/>
               <xsd:element name="ProductConcept" type="ProductConcept"/>
               <xsd:element name="ProductConfiguration" type="ProductConfiguration"/>
               <xsd:element name="ProductDefinitionElementRelationship"
                  type="ProductDefinitionElementRelationship"/>
               <xsd:element name="ProductDesignToIndividual" type="ProductDesignToIndividual"/>
               <xsd:element name="ProductDesignVersionToIndividual"
                  type="ProductDesignVersionToIndividual"/>
               <xsd:element name="ProductDesignViewToIndividual"
                  type="ProductDesignViewToIndividual"/>
               <xsd:element name="ProductGroup" type="ProductGroup"/>
               <xsd:element name="ProductGroupMembership" type="ProductGroupMembership"/>
               <xsd:element name="ProductPlannedToRealized" type="ProductPlannedToRealized"/>
               <xsd:element name="Project" type="Project"/>
               <xsd:element name="QualificationType" type="QualificationType"/>
               <xsd:element name="QualitativeUncertainty" type="QualitativeUncertainty"/>
               <xsd:element name="RegionalCoordinate" type="RegionalCoordinate"/>
               <xsd:element name="RegionalGridLocationRepresentation"
                  type="RegionalGridLocationRepresentation"/>
               <xsd:element name="RelatedConditionParameter" type="RelatedConditionParameter"/>
               <xsd:element name="RequiredResource" type="RequiredResource"/>
               <xsd:element name="Requirement" type="Requirement"/>
               <xsd:element name="RequirementSatisfiedBy" type="RequirementSatisfiedBy"/>
               <xsd:element name="RequirementSource" type="RequirementSource"/>
               <xsd:element name="ResourceAsRealized" type="ResourceAsRealized"/>
               <xsd:element name="ResourceItem" type="ResourceItem"/>
               <xsd:element name="ResourceItemRealization" type="ResourceItemRealization"/>
               <xsd:element name="Risk" type="Risk"/>
               <xsd:element name="Scheme" type="Scheme"/>
               <xsd:element name="SecurityClassification" type="SecurityClassification"/>
               <xsd:element name="SerialEffectivity" type="SerialEffectivity"/>
               <xsd:element name="SetMembership" type="SetMembership"/>
               <xsd:element name="ShapeDependentPropertyRepresentation"
                  type="ShapeDependentPropertyRepresentation"/>
               <xsd:element name="ShapeDescriptionAssociation" type="ShapeDescriptionAssociation"/>
               <xsd:element name="ShapeElement" type="ShapeElement"/>
               <xsd:element name="ShapePlacementAssociation" type="ShapePlacementAssociation"/>
               <xsd:element name="StandardUncertainty" type="StandardUncertainty"/>
               <xsd:element name="State" type="State"/>
               <xsd:element name="StateAssertion" type="StateAssertion"/>
               <xsd:element name="StateAssessment" type="StateAssessment"/>
               <xsd:element name="StateDefinition" type="StateDefinition"/>
               <xsd:element name="StateObserved" type="StateObserved"/>
               <xsd:element name="StatePredicted" type="StatePredicted"/>
               <xsd:element name="SubsetMember" type="SubsetMember"/>
               <xsd:element name="System" type="System"/>
               <xsd:element name="SystemBreakdown" type="SystemBreakdown"/>
               <xsd:element name="SystemBreakdownContext" type="SystemBreakdownContext"/>
               <xsd:element name="SystemElement" type="SystemElement"/>
               <xsd:element name="TaskMethod" type="TaskMethod"/>
               <xsd:element name="TaskObjective" type="TaskObjective"/>
               <xsd:element name="TimeInterval" type="TimeInterval"/>
               <xsd:element name="TimeIntervalEffectivity" type="TimeIntervalEffectivity"/>
               <xsd:element name="TimeIntervalWithBounds" type="TimeIntervalWithBounds"/>
               <xsd:element name="TypeOfPerson" type="TypeOfPerson"/>
               <xsd:element name="TypeOfPersonDefinition" type="TypeOfPersonDefinition"/>
               <xsd:element name="UncertaintyQualifier" type="UncertaintyQualifier"/>
               <xsd:element name="Validation" type="Validation"/>
               <xsd:element name="ValueFunction" type="ValueFunction"/>
               <xsd:element name="Verification" type="Verification"/>
               <xsd:element name="ViewDefinitionContext" type="ViewDefinitionContext"/>
               <xsd:element name="WorkOrder" type="WorkOrder"/>
               <xsd:element name="WorkOutput" type="WorkOutput"/>
               <xsd:element name="WorkRequest" type="WorkRequest"/>
               <xsd:element name="ZoneBreakdown" type="ZoneBreakdown"/>
               <xsd:element name="ZoneBreakdownContext" type="ZoneBreakdownContext"/>
               <xsd:element name="ZoneElement" type="ZoneElement"/>
            </xsd:choice>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <!--block based complex types-->
   <xsd:complexType name="Activity" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An Activity is the identification of the occurrence of an action that
            has taken place, is taking place, or is expected to take place in the future. The
            procedure executed during an Activity is identified by the ActivityMethod that is
            referred to by the chosenMethod attribute. Change, distilling, design, a process to
            drill a hole, and a task such as training someone, are examples of activities. NOTE:
            Status information identifying the level of completion of each activity may be provided
            within an instance of StateObserved. NOTE: The items that are affected by an Activity,
            for example as input or output, may be identified within an instance of
            ActivityAssignment. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Activity. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Activity.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> A reference to a class held externally to the exchange file
                        that classifies this Activity. This Activity is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> A reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a proxy.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute chosenMethod to entity-->
               <xsd:element name="ChosenMethod" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> A reference to the ActivityMethod used for this Activity.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ActivityRelationship" type="ActivityRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityActual" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityActual is a specialization of Activity. It is a record of
            the occurrence of an Activity. The ActivityActual is related through an
            ActivityHappening to the Activity of which it is an occurrence. The existence of an
            ActivityActual instance means that the ActivityActual has commenced. NOTE: A
            DateTimeAssignment classified as "start date" should assign a date to the ActivityActual
            to record when the activity started. NOTE: A date and time may be assigned to the
            activity with role "end date" to record when the activity finished. In general, the
            absence of this assignment cannot be used to infer that the activity is continuing, only
            that the end of the activity has not yet been recorded. NOTE: A more detailed history of
            the progress of an activity may be recorded by applying states to the activity, but the
            meaning of these states must be defined through local business rules.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Activity">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ResourceAsRealizedAssignment" type="ResourceAsRealizedAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityAssignment is a specialization of an AssignmentObject that
            represents the assignment of Activity instances to instances that are specializations of
            ActivityAssignmentSelect. NOTE: The meaning of the assignment is determined by
            classification which is identified by the AssignmentObject property. The possible
            classifications are subclasses of . NOTE: This entity should not be used to represent
            the association of an activity with the organizations that are responsible for its
            execution or its management. That kind of information can be represented with instances
            of OrganizationOrPersonInOrganizationAssignment </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedActivity to entity-->
               <xsd:element name="AssignedActivity" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Activity that is considered. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceAsRealizedAssignment" type="ResourceAsRealizedAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityHappening" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityHappening is a specialization of ActivityRelationship. It is
            a relationship between the definition of an activity (ActivityHappening) and its actual
            occurrence (ActivityHappening). NOTE: Many ActivityActuals may be realizations of a
            single Activity. A single defined check (e.g. an oil-check) is actually performed on
            many occasions or vehicles. NOTE: A single ActivityActual may realize several
            activities. A single actual servicing activity includes several checks and repairs (e.g.
            an oil-check and a tyre-replacement). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityRelationship">
            <xsd:sequence><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityMethod" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityMethod is a way to carry out an Activity. NOTE: There may be
            more than one method for producing a required result. NOTE: This definition may be used
            to characterize a way to resolve a request for action. The concept of action request is
            represented by WorkRequest. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ActivityMethod
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ActivityMethod.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ActivityMethod. This ActivityMethod is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute consequence to entity-->
               <xsd:element name="Consequence" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the text that describes the results of application of this
                        method.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ActivityMethodRelationship" type="ActivityMethodRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityMethodAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ActivityMethodAssignment is an association of an ActivityMethod with
            product or activity data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedActivityMethod to entity-->
               <xsd:element name="AssignedActivityMethod" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ActivityMethod that is to be associated with product or
                        activity data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityMethodRealization" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityMethodRealization is a specialization of an
            AssociationObject.  It is a further specification of how an activity method is to be
            performed with the ActivityMethod. NOTE: More than one specification can be associated
            with the same ActivityMethod. For a given planned activity there may be a task
            specification, a statement of how task performance is to be logged and a schedule that
            all apply. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ActivityMethodRealization
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute activityMethod to entity-->
               <xsd:element name="ActivityMethod" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ActivityMethod for which further specification is being
                        provided. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realizedBy to SELECT-->
               <xsd:element name="RealizedBy" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that realizes the ActivityMethod. A plan,
                        schedule, or task description may realize the activity method. NOTE: More
                        than one such item can be associated with the activity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ActivityMethodRealizationRelationship"
                  type="ActivityMethodRealizationRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityMethodRealizationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityMethodRealizationRelationship is a specialization of an
            RelationshipObject that is a relationship between two instances of
            ActivityMethodRealization. NOTE: The meaning of the relationship is determined by
            classification which is identified by the ActivityMethodRealizationRelationship
            property. The possible classifications are subclasses of . NOTE: An
            ActivityMethodRealizationRelationship may be used to specify sequencing and other
            constraints between different realizations for the same ActivityMethod.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the
                        ActivityMethodRealizationRelationship </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ActivityMethodRealization that is a
                        part of the relationship. If one ActivityMethodRealization in the
                        relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityMethodRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityMethodRelationship is a specialization of an
            RelationshipObject that is a relationship between two instances of ActivityMethod. NOTE:
            The meaning of the relationship is determined by classification which is identified by
            the RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ActivityMethodRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ActivityMethod that is part of the
                        relationship. NOTE: The related usually identifies the ActivityMethod, which
                        is based on the definition of the relatingMethod. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ActivityRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ActivityRelationship is a specialization of an RelationshipObject
            that is a relationship between two instances of Activity. NOTE: The meaning of the
            relationship is determined by classification which is identified by the
            RelationshipObject property. The possible classifications are subclasses of . The
            activity required to complete a work order, may be decomposed into a series of
            activities. Their corresponding instances would be related using instances of the
            ActivityRelationship entity. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ActivityRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the second instance of Activity that is part of the
                        relationship. NOTE: The related usually identifies the Activity, which is
                        based on the definition of the relatingActivity. NOTE: The meaning of this
                        attribute is defined by the name attribute. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Address" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Address is the information that locate persons or organizations. It
            provides location details for communication via postal mail, telephone, facsimile, telex
            or electronic mail. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Address </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Address. This Address is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute name to base type-->
               <xsd:element name="Name" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the words by which the Address is known. It specifies the
                        name of the location identified by the address. The value of this attribute
                        need not be specified. "White House", "Buckingham Palace", and "North Pole"
                        are examples of address name. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute streetNumber to base type-->
               <xsd:element name="StreetNumber" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number of a location on a street. The value of this
                        attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute street to base type-->
               <xsd:element name="Street" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of a street. The value of this attribute need not
                        be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute postalBox to base type-->
               <xsd:element name="PostalBox" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number of a postal box. The value of this attribute
                        need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute town to base type-->
               <xsd:element name="Town" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of a town. The value of this attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute region to base type-->
               <xsd:element name="Region" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of a region. The value of this attribute need not
                        be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute postalCode to base type-->
               <xsd:element name="PostalCode" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the code that is used by the country's postal service. The
                        value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute country to base type-->
               <xsd:element name="Country" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of a country. The value of this attribute need not
                        be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute internalLocation to base type-->
               <xsd:element name="InternalLocation" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> an organization-defined address for internal mail delivery.
                        The value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute facsimileNumber to base type-->
               <xsd:element name="FacsimileNumber" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number to which facsimiles may be sent. The value of
                        this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute telephoneNumber to base type-->
               <xsd:element name="TelephoneNumber" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number at which telephone calls may be received. The
                        value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute electronicMailAddress to base type-->
               <xsd:element name="ElectronicMailAddress" type="xsd:string" minOccurs="0"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the electronic address to which electronic mail may be
                        sent. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute telexNumber to base type-->
               <xsd:element name="TelexNumber" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number where telex messages may be received. The value
                        of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute url to base type-->
               <xsd:element name="Url" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that specifies the Uniform Resource Locator
                        associated with the address. The value of this attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AddressAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An AddressAssignment is a specialization of an AssignmentObject that
            represents the association of an Organization or a PersonInOrganization with an Address.
            NOTE: The meaning of the assignment is determined by classification which is identified
            by the AssignmentObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedAddress to entity-->
               <xsd:element name="AssignedAddress" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Address that is provided. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AddressBasedLocationRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AddressBasedLocationRepresentation is a specialization of
            LocationRepresentation specified by its postal identification. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LocationRepresentation">
            <xsd:sequence>
               <!--EXPRESS attribute postalAddress to entity-->
               <xsd:element name="PostalAddress" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the location where mail can be received.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AdvisoryNote" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AdvisoryNote is the link between a task element with an advisory task
            step. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute advisory to entity-->
               <xsd:element name="Advisory" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AdvisoryTaskStep used to provide the details of the
                        note. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="AdvisoryTaskStep" type="AdvisoryTaskStep" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute appliesTo to entity-->
               <xsd:element name="AppliesTo" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement within which the note applies.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AdvisoryTaskStep" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AdvisoryTaskStep is a type of TaskStep. It conveys information. NOTE:
            Some TaskMethods may not require any action to be undertaken. "Beware of hot exhausts",
            "do not use tool X this way" and similar messages. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskStep">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AlternatePartRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AlternatePartRelationship is a specialization of
            AlternateProductRelationship where the alternate and base products are parts.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AlternateProductRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AlternateProductRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AlternateProductRelationship is an association between two instances
            of Product. It specifies that any version of the AlternateProductRelationship, may be
            used in place of any version of the baseProduct. The relationship established by the
            AlternateProductRelationship is not symmetric: if B is an alternate product for A, A is
            not implied to be an alternate product for B. NOTE: If a product is an alternate for
            another product, it is understood that there is no interest to keep track of which
            product, the base or any alternates specified, is used as a particular instance of the
            base product within a product structure. NOTE: An organization may track design changes
            for a base part, and establish effectivity conditions for the use of that base part in
            various assemblies to be manufactured. The use of an alternate product implies that an
            organization does not specify any particular version of the alternate product nor
            establish effectivities relating to it. NOTE: An AlternateProductRelationship may relate
            products of any kind, provided both related instances of Product identify products of
            the same kind, for example part-part or document-document. NOTE: An
            AlternateProductRelationship for which the baseProduct is an assembly involves that the
            entire product structure of the alternateProduct may be used in place of the baseProduct
            and its product structure. Two bolts of the same size are products. One bolt has a
            square head and the other has a hexagonal head. The two bolts are considered equivalent
            with respect to form, fit, and function: they both have sufficiently close physical
            shape, they take up the same space when used, and they both serve to fasten two things
            together. Thus, one of these two bolts could be considered to be an alternate part for
            the other bolt. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute criteria to entity-->
               <xsd:element name="Criteria" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a text description that specifies the rationale and
                        criteria used to assess the capability of replacing the
                        AlternateProductRelationship by the AlternateProductRelationship. The
                        concept of alternate products usually refers to form, fit, function, and
                        quality. Additional properties such as performance, noise, endurance, or
                        reliability may also be considered as a prerequisite for the replacement.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Analysis" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An Analysis is a specialization of Product. It is produced via a
            reproducible process. NOTE: Analysis is the process of studying or examining something
            in an organized way to learn more about it, or a particular study or examination of
            something. The full range of the analysis process includes mathematical, physical
            testing, cognitive, chemical, etc. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AnalysisAssignment is a specialization of a AssignmentObject that
            relates a specific version of an analysis to the item being analyzed.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedAnalysis to entity-->
               <xsd:element name="AssignedAnalysis" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AnalysisVersion being assigned. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisDisciplineDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An AnalysisDisciplineDefinition is a specialization of
            ProductViewDefinition. It is a definition or view of an AnalysisVersion taken from the
            perspective of the analysing organization. The AnalysisDisciplineDefinition is
            controlled by the analysing organization. The entity may be used to capture the
            definition of a particular version of an analysis at any intermediate stage of its
            development where the definition is not formally released by an organization at the
            analysis version level. It may be used to capture the various stages in the definition
            cycle of a product. If the analysis is explicitly represented by a model then the model
            is referenced from AnalysisDisciplineDefinition.definitionalRepresentations.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute definitionalRepresentations to entity-->
               <xsd:element name="DefinitionalRepresentations" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="AnalysisModelObject" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisModel" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AnalysisModel is used to support the description of analysis
            concepts. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AnalysisModelObject">
            <xsd:sequence>
               <!--EXPRESS attribute items to SELECT-->
               <xsd:element name="Items" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> The data that makes up the analysis model.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisModelObject" abstract="true">
      <xsd:annotation>
         <xsd:documentation> An AnalysisModelObject represents the results of an analysis.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the AnalysisModelObject
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        AnalysisModelObject. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this AnalysisModelObject. This AnalysisModelObject is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute contextOfItems to entity-->
               <xsd:element name="ContextOfItems" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AnalysisRepresentationContext in which the
                        AnalysisModel is defined. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisRepresentationContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AnalysisRepresentationContext defines the context for the items
            (AnalysisModelItemsSelect) used in an AnalysisModel. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a set of text based descriptions of the
                        AnalysisRepresentationContext. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Product This Product is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An AnalysisVersion is a specialization of ProductVersion that
            identifies a particular version of an analysis. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AnalysisVersionRelationship" type="AnalysisVersionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="AnalysisVersionSequence" type="AnalysisVersionSequence"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A AnalysisVersionRelationship is a specialization of
            ProductVersionRelationship that is used to assert an association between two versions of
            an analysis. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AnalysisVersionSequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A AnalysisVersionSequence is a specialization of
            AnalysisVersionRelationship that is used to assert that the one analysis version (the
            successor) replaces another (its predecessor). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AnalysisVersionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AndStateCauseEffectDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AndStateCauseEffectDefinition is a specialization of
            StateCauseEffectDefinition. It relates one or more causing StateDefinition entities and
            one effect StateDefinition. All the causing StateDefinition entities must exist prior to
            the single effect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateCauseEffectDefinition">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ApplicationDomain" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ApplicationDomain defines the scope of applicability for a
            ViewDefinitionContext Each ApplicationDomain optionally references a data item in either
            a ExternalOwlObject or a ExternalItem that may indicate what the domain is.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        ApplicationDomain.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute sameAs to SELECT-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which the ApplicationDomain is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="ExternalItem" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ExternalOwlObject" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Approval" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Approval is a formal confirmation of the quality of some activity or
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Approval </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Approval.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Approval This Approval is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute plannedDate to defined type-->
               <xsd:element name="PlannedDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the point in time when the Approval is or was supposed to
                        be performed. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute actualDate to defined type-->
               <xsd:element name="ActualDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the point in time when the Approval actually became valid.
                        The value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ApprovalRelationship" type="ApprovalRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ApprovalAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ApprovalAssignment is the assignment of an Approval to activity or
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedApproval to entity-->
               <xsd:element name="AssignedApproval" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Approval that is assigned with activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ApprovalRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ApprovalRelationship is a typed association between two instances of
            Approval. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Approval that is a part of the
                        relationship. If one element of the relationship is dependent of the other,
                        this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ApprovingPersonOrganization" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ApprovingPersonOrganization is an association between an Approval and
            the organization or person and organization that has granted this approval.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ApprovingPersonOrganization This
                        ApprovingPersonOrganization is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute personOrganization to SELECT-->
               <xsd:element name="PersonOrganization" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Organization, PersonInOrganization, Position or the
                        PositionGroup that has granted the approval. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute approvalDate to defined type-->
               <xsd:element name="ApprovalDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the point in time when the Approval has been given. The
                        value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute authorizedApproval to entity-->
               <xsd:element name="AuthorizedApproval" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Approval that has been given by the considered person
                        or the organization. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionGroupAssignment" type="PositionGroupAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionTypeAssignment" type="PositionTypeAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssemblyViewRelationship" abstract="true">
      <xsd:annotation>
         <xsd:documentation>An AssemblyViewRelationship is a specialization of
            ViewDefinitionRelationship. It identifies a possibly quantified usage of a product
            version as a component of another product version. The relationship is established
            between two ProductViewDefinitions The inherited attribute ViewDefinitionRelationship
            identifies the ProductViewDefinition of the assembly. The inherited attribute
            ViewDefinitionRelationship identifies the ProductViewDefinition of the product version
            that plays the role of component. The AssemblyViewRelationship specifies that, in the
            ProductViewDefinition of the ProductViewDefinition that is referred to as
            ViewDefinitionRelationship, it is considered that the product version that is indirectly
            identified with the ViewDefinitionRelationship attribute, is a component of the product
            version that is indirectly identified with the ViewDefinitionRelationship attribute.
            NOTE: In another context, the structure of the assembly may be described differently,
            adding, for example, an intermediate level between the products. NOTE: This entity data
            type may be used to establish assembly relationships during design or to represent the
            composition of an assembly existing in the real world. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute locationIndicator to entity-->
               <xsd:element name="LocationIndicator" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Identifier that identifies this usage of the component
                        in the assembly in a diagram, list, chart, or on a physical piece of
                        equipment. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ValueWithUnit that defines the amount of this usage of
                        the component in the assembly. The value of this attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AssemblyRelationshipSubstitution"
                  type="AssemblyRelationshipSubstitution" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ComponentUpperLevelIdentification"
                  type="ComponentUpperLevelIdentification" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssemblyRelationshipSubstitution" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AssemblyRelationshipSubstitution is a relationship that indicates
            that an AssemblyViewRelationship may be substituted by another AssemblyViewRelationship.
            Both assembly relationships shall refer to the same ProductViewDefinition of the same
            assembly. NOTE: Consequently, an AssemblyRelationshipSubstitution actually specifies
            that the product version that plays the role of component in the substituteRelationship
            may be replaced by the product version that plays the role of component in the
            baseRelationship. NOTE: The instance of the substitute constituent does not require the
            same spatial relationship or the same quantity. A substitute constituent does not
            require equivalent form, fit, and function of the constituent for which it is a
            substitute. NOTE: As instances of AssemblyViewRelationship establish assembly
            relationships relevant in the definition contexts of the assembly, the substitution only
            apply in these contexts. An AssemblyRelationshipSubstitution defines a one-way
            substitution: if A is specified as a substitute for B, B is not implied to be a
            substitute for A. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute baseRelationship to entity-->
               <!--EXPRESS attribute substituteRelationship to entity-->
               <xsd:element name="SubstituteRelationship" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AssemblyViewRelationship that may be used in place of
                        the baseRelationship </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssignmentObject" abstract="true">
      <xsd:annotation>
         <xsd:documentation> An AssignmentObject defines the allocation of one datatype to another.
            Only non-abstract specializations of the AssignmentObject datatype can be instantiated.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the AssignmentObject
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the AssignmentObject.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this AssignmentObject This AssignmentObject is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AssignmentObjectRelationship" type="AssignmentObjectRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssignmentObjectRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An AssignmentObjectRelationship is an association between two
            AssignmentObjects. NOTE: An AssignmentObjectRelationship can be used to represent a
            historical sequence of assignments. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the second instance of AssignmentObject that is a part of
                        the relationship. NOTE: If one AssignmentObject in the relationship is
                        dependent upon the other, this attribute shall be the dependent one.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssociationObject" abstract="true">
      <xsd:annotation>
         <xsd:documentation>An AssociationObject is an abstract generalization of instances that
            represent an association between two sets of product or activity
            data.</xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> A set of text based descriptions of the object.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this AssociationObject. This AssociationObject is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Assumption" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An Assumption is the identification of something assumed to be true
            without proof. The reason or justification for an assumption being made shall be
            represented by a JustificationAssignment being assigned to the Assumption. An activity
            is planned based on the assumption that the resource required to perform the activity is
            available at a location. The item that is assumed shall be related to the Assumption by
            an ItemAssumed </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Assumption
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Assumption.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Assumption This Assumption is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AssumptionRelationship" type="AssumptionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssumptionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An AssumptionAssignment is an association between an Assumption and the
            context in which the assumption is made. The following set of assumptions are relevant
            to the project. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedAssumption to entity-->
               <xsd:element name="AssignedAssumption" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Assumption that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AssumptionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AssumptionRelationship is an association between two Assumptions.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the AssumptionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the second instance of AssumptionRelationship that is a
                        part of the relationship. NOTE: If one AssumptionRelationship in the
                        relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlot" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlot is a specialization of Product that represents the
            position in which a part is or can be attached to a parent product. A fast jet aircraft
            has two engines. These engines are removable and interchangeable between individual
            aircraft. An attachment slot represents each installation position for an engine so as
            to ensure that an accurate record is maintained of which engines fly in which pairing on
            which aircraft for how many hours. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotAsPlanned" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotAsPlanned is a specialization of AttachmentSlotVersion
            that identifies an individual that is the subject of a plan to realize an
            AttachmentSlot. FlyFasterWithUs Group will buy an aircraft with serial number 1234 next
            year. The company wishes to plan the schedule for removal of engines from the aircraft
            for maintenance purposes. Instances of the AttachmentSlotAsPlanned entity data type
            allow the company to associate individual engines with the aircraft at different times
            over the planned period. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AttachmentSlotVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotAsRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotAsRealized is a specialization of AttachmentSlotVersion
            that identifies an individual that is a realized AttachmentSlot. FlyFasterWithUs Group
            operates an aircraft with serial number 1234 next year. The company records which
            individual engines power the aircraft at different times during the lifetime of the
            aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AttachmentSlotVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotDefinition is a specialization of ProductViewDefinition
            that identifies a view of an AttachmentSlot. An airworthiness authority requires an
            airline company to report which individual engines power the aircraft at different times
            during the lifetime of the aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotDesign" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotDesign is a specialization of AttachmentSlotVersion
            that identifies the design version of an attachment slot. WeMakeBigPlanes Limited
            creates design version 1.34 of the attachment slot for the starboard engine of an
            aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AttachmentSlotVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotDesignToPlanned" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotDesignToPlanned is a relationship between a design
            version of an AttachmentSlot and a planned individual that conforms to the design.
            WeMakeBigPlanes Limited plans production of aircraft serial number 1234 with a starboard
            engine attachment slot that is to conform to design version 1.34. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute design to entity-->
               <xsd:element name="Design" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the attachment slot concept to which the
                        planned individual will conform. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute planned to entity-->
               <xsd:element name="Planned" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the attachment slot that is to conform to the design
                        version. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotDesignToRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotDesignToRealized is a relationship between a design
            version of an AttachmentSlot and a realized individual that conforms to the design.
            WeMakeBigPlanes Limited builds aircraft serial number 1234 with a starboard engine
            attachment slot that conforms to design version 1.34. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute design to entity-->
               <xsd:element name="Design" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the concept to which the realized individual
                        conforms. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realized to entity-->
               <xsd:element name="Realized" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that conforms to the design.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotOnProduct" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotOnProduct is a relationship between a product and an
            AttachmentSlot that is a location on the product at which to install removable parts. An
            aircraft has a pylon mounting on a wing as a location at which to install various
            equipment. An instance of the AttachmentSlotOnProduct entity data type identifies which
            attachment slot corresponds to the pylon. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the AttachmentSlotOnProduct
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        AttachmentSlotOnProduct. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this AttachmentSlotOnProduct This AttachmentSlotOnProduct is
                        a member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute product to entity-->
               <xsd:element name="Product" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the thing that associates the attachment slot location at
                        which to attach parts to the product view definition. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute attachmentSlot to entity-->
               <xsd:element name="AttachmentSlot" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a location on a product at which to attach parts via an
                        aperture. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotPlannedToRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotPlannedToRealized is a relationship between a realized
            individual of an AttachmentSlot and a corresponding planned individual. WeMakeBigPlanes
            Limited builds aircraft serial number 2468 with a starboard engine attachment slot that
            was previously planned. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute planned to entity-->
               <xsd:element name="Planned" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the attachment slot that relates to the realized
                        individual. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realized to entity-->
               <xsd:element name="Realized" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that relates to the planned individual.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AttachmentSlotVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AttachmentSlotVersion is a specialization of ProductVersion that
            identifies a version of AttachmentSlot. NOTE: This is a generic concept of version, in
            most situations it is possible and more specific to represent a version as
            AttachmentSlotDesign, AttachmentSlotAsPlanned or AttachmentSlotAsRealized.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AxisPlacement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AxisPlacement is a specialization of DetailedGeometricModelElement
            that defines a right-handed, 2D or 3D, coordinate system. If the AxisPlacement belongs
            to a 3D geometric space, the third direction of the coordinate system is defined by the
            vector product of x-axis and y-axis. An AxisPlacement may be an AxisPlacement2d or an
            AxisPlacement3d. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute origin to entity-->
               <xsd:element name="Origin" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CartesianPoint that defines the position of the
                        AxisPlacement in the geometric space. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="CartesianPoint" type="CartesianPoint" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute xAxis to entity-->
               <xsd:element name="XAxis" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Direction that defines the first axis of the
                        AxisPlacement. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Direction" type="Direction" minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute yAxis to entity-->
               <xsd:element name="YAxis" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Direction that defines the second axis of the
                        AxisPlacement. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Direction" type="Direction" minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AxisPlacement2d" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AxisPlacement2d is a specialization of AxisPlacement.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AxisPlacement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AxisPlacement3d" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AxisPlacement3d is a specialization of AxisPlacement.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AxisPlacement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="AxisPlacementMapping" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An AxisPlacementMapping is a geometric transformation defined by a
            source AxisPlacement and a target AxisPlacement that results from the transformation of
            the source one. Both instances of AxisPlacement shall have the same dimensionality. The
            transformation shall be computed as the isometric transformation that maps: the origin
            of the source onto the origin of the target; the AxisPlacement of the source onto the
            AxisPlacement of the target; the AxisPlacement of the source onto the AxisPlacement of
            the target. NOTE: By construction, the determinant of the transformation matrix equals
            one. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute source to entity-->
               <xsd:element name="Source" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AxisPlacement that plays the role of source in the
                        transformation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute target to entity-->
               <xsd:element name="Target" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AxisPlacement that plays the role of target in the
                        transformation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Breakdown" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Breakdown is a specialization of Product that identifies a
            partitioning of a product into a set of related elements so as to form explicit,
            parent-child views that comprise the product elements. The parent-child view is
            represented by BreakdownElementUsage instances relating the elements in the breakdown
            that are represented by BreakdownElement instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A BreakdownContext is a membership relationship between a
            BreakdownElement and a Breakdown of which the element is a member. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the BreakdownContext.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this BreakdownContext This BreakdownContext is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute breakdown to entity-->
               <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the Breakdown of which the BreakdownElement
                        is a member. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute breakdownElement to entity-->
               <xsd:element name="BreakdownElement" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the view of the version of the BreakdownElement that is a
                        member of the Breakdown. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A BreakdownElement is a specialization of Product that identifies the
            elements in one or more Breakdown instances. NOTE: BreakdownElement is non-specific and
            allows for various types of product breakdown. The more specific breakdown elements are
            FunctionalElement, PhysicalElement, SystemElement, and ZoneElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownElementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A BreakdownElementDefinition is a specialization of
            ProductViewDefinition that identifies a view of a version ( BreakdownElementVersion) of
            a BreakdownElement. NOTE: BreakdownElementDefinition is non-specific and allows for
            various types of product breakdowns. The more specific breakdown element definitions are
            FunctionalElementDefinition, PhysicalElementDefinition, SystemElementDefinition and
            ZoneElementDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="BreakdownElementUsage" type="BreakdownElementUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownElementRealization" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A BreakdownElementRealization is a specialization of
            ProductDefinitionElementRelationship that identifies a relationship between a
            BreakdownElementDefinition or a BreakdownElementUsage and an item that realizes that
            element definition or usage. A pump realizes the 'provide fuel to engine' element in a
            functional breakdown for a ship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductDefinitionElementRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the BreakdownElementRealization
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownElementUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A BreakdownElementUsage is a specialization of
            ViewDefinitionRelationship that identifies a relationship between a parent and child
            BreakdownElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionUsage">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownElementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A BreakdownElementVersion is a specialization of ProductVersion that
            identifies a version of a BreakdownElement. NOTE: BreakdownElementVersion is
            non-specific and allows for various types of product breakdown. The more specific
            breakdown elements are FunctionalElementVersion, PhysicalElementVersion,
            SystemElementVersion and ZoneElementVersion. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownOf" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A BreakdownOf is a relationship between a Breakdown and a Product of
            which the breakdown is a view. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the BreakdownOf.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this BreakdownOf This BreakdownOf is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute ofView to SELECT-->
               <xsd:element name="OfView" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ProductViewDefinition of which the breakdown is a view.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="BreakdownVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A BreakdownVersion is a specialization of ProductVersion that identifies
            a version of a Breakdown </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute breakdownOf to entity-->
               <xsd:element name="BreakdownOf" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Breakdown_version shall be a breakdown of one and only
                        one product. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="BreakdownOf" type="BreakdownOf" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CartesianPoint" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CartesianPoint is a specialization of DetailedGeometricModelElement
            that defines a point by a list of up to 3 cartesian coordinates. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute coordinates to defined type-->
               <xsd:element name="Coordinates" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="coordinates" type="xsd:double" minOccurs="1"
                           maxOccurs="3"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CartesianTransformation2d" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CartesianTransformation2d is a specialization of
            DetailedGeometricModelElement. It is defined in a 2D geometric space by a 2*2 matrix and
            a cartesian point. Let be: M, the 2*2 multiplication matrix of the cartesian
            transformation; A, the point of the cartesian transformation; P, a point in the
            geometric space; Q, the result of the application of the transformation to P. The
            coordinates of Q shall be obtained by the formula: Q = M*P + A </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute multiplicationMatrix to entity-->
               <xsd:element name="MultiplicationMatrix" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the array of two instances of Direction that defines the
                        multiplication matrix of the transformation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Direction" type="Direction" minOccurs="1" maxOccurs="2"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute translation to entity-->
               <xsd:element name="Translation" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CartesianPoint that defines the position of the result
                        of the application of the transformation to the origin of the geometric
                        space. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="CartesianPoint" type="CartesianPoint" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CartesianTransformation3d" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CartesianTransformation3d is a specialization of
            DetailedGeometricModelElement that is a geometric transformation defined in a 3D
            geometric space by a 3*3 matrix and a cartesian point. Let be: M, the 3*3 multiplication
            matrix of the cartesian transformation; A, the point of the cartesian transformation; P,
            a point in the geometric space; Q, the result of the application of the transformation
            to P. The coordinates of Q shall be obtained by the formula: Q = M*P + A
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute multiplicationMatrix to entity-->
               <xsd:element name="MultiplicationMatrix" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the array of three instances of Direction that defines the
                        multiplication matrix of the transformation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Direction" type="Direction" minOccurs="1" maxOccurs="3"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute translation to entity-->
               <xsd:element name="Translation" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CartesianPoint that defines the position of the result
                        of the application of the transformation to the origin of the geometric
                        space. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="CartesianPoint" type="CartesianPoint" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CausalConsequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CausalConsequence is a specialization of ViewDefinitionRelationship
            that identifies secondary effects related to or resulting from a particular
            RiskConsequence. NOTE: A CausalConsequence is considered as an aftereffect of an
            immediate CausalConsequence. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Certification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Certification is a certificate. It asserts satisfaction of particular
            quality criteria. NOTE: Certification information can be attached to any aspect of
            product or activity data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Certification
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Certification.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Certification This Certification is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CertificationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CertificationAssignment is an association of a Certification with
            activity or product data. 'certified supplier' is an example of certification that may
            be granted to an organization by its contractor. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedCertification to entity-->
               <xsd:element name="AssignedCertification" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Certification that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ChainBasedGeometricItemSpecificUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ChainBasedGeometricItemSpecificUsage is a specialization of
            GeometricItemSpecificUsage that represents a chain of GeometricModels in a graph of
            GeometricModels, where the undirected links in the graph can be
            GeometricCoordinateSpaces, GeometricModelRelationships, or GeometricPlacementOperations.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricItemSpecificUsage">
            <xsd:sequence>
               <!--EXPRESS attribute nodes to entity-->
               <xsd:element name="Nodes" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="GeometricModel" type="cmn:Reference" minOccurs="2"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute undirectedLink to SELECT-->
               <xsd:element name="UndirectedLink" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the list of items that relate nodes in the chain.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="GeometricCoordinateSpace" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricModelRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricModelRelationshipWithTransformation"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricRelationshipWithOperatorTransformation"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricCompositionWithOperatorTransformation"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricRelationshipWithPlacementTransformation"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricCompositionWithPlacementTransformation"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricPlacementOperation" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricOperatorTransformation" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="GeometricPlacement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Classification" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A Classification is a relationship to the class that a subject is a
            member of. NOTE: The subject is represented by a Block that has a "classifiedAs" as a
            property of type Classification. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ClassificationRelationship" type="ClassificationRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
            <xsd:attribute name="classRef" type="xsd:IDREF"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ClassificationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ClassificationRelationship is a specialization of an
            RelationshipObject that is a relationship between two instances of Classification. NOTE:
            The meaning of the relationship is determined by classification which is identified by
            the RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Classification that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Collection" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Collection is a specialization of Product that identifies a set of
            data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="CollectionRelationship" type="CollectionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionAssignment is an association of an CollectionViewDefinition
            with the instance to which the collection has relevance. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedCollection to entity-->
               <xsd:element name="AssignedCollection" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CollectionViewDefinition that is assigned to activity
                        or product data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionMembership" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionMembership is an association of an CollectionViewDefinition
            with an instance that represents a member of the collection. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute member to SELECT-->
               <xsd:element name="Member" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> an instance that represents a member of the collection.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute ofCollection to entity-->
               <xsd:element name="OfCollection" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CollectionViewDefinition of which the instance is a
                        member. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionRelationship is a specialization of ProductRelationship
            that represents an association between two Collection instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionVersion is a specialization of ProductVersion that
            represents a revision of an Collection. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="CollectionVersionRelationship"
                  type="CollectionVersionRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionVersionSequenceRelationship"
                  type="CollectionVersionSequenceRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionVersionRelationship is a specialization of
            ProductVersionRelationship that represents an association between two CollectionVersion
            instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionVersionSequenceRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionVersionSequenceRelationship is a specialization of
            CollectionVersionRelationship that represents a sequential association between two
            CollectionVersion instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="CollectionVersionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CollectionViewDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An CollectionViewDefinition is a specialization of ProductViewDefinition
            that represents a characterization of an CollectionVersion relevant in one or more
            application domains and for one or more life cycle stages. A set of data relevant to the
            design of the SS Titanic and a set of data relevant to the as-built description of the
            SS Titanic might be represented as two instances of CollectionViewDefinition.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ComponentUpperLevelIdentification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ComponentUpperLevelIdentification is a specialization of
            AssemblyViewRelationship. It identifies a component of an assembly with respect to an
            upper level in the assembly structure. NOTE: A ComponentUpperLevelIdentification does
            not add a component in an assembly, it provides a means to further characterize a
            component with respect to an upper level assembly. A ComponentUpperLevelIdentification
            may be used to assign a property to a component that applies in the context of a
            particular upper level assembly. The identified component is the version of product,
            indirectly referred to as the ViewDefinitionRelationship of the subAssemblyRelationship.
            The upper level assembly is the version of product, indirectly referred to as the
            ViewDefinitionRelationship of the upperAssemblyRelationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssemblyViewRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute upperAssemblyRelationship to entity-->
               <!--EXPRESS attribute subAssemblyRelationship to entity-->
               <xsd:element name="SubAssemblyRelationship" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the NextAssemblyViewUsage that identifies indirectly the
                        component that is further characterized by the
                        ComponentUpperLevelIdentification. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CompositionOfState" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CompositionOfState is a specialization of state relationship and it
            relates the nature of states in relation to one another, where two or more State parts
            compose a whole State; and furthermore, whole states can become parts of yet another
            whole State. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="CompositionOfStateDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A CompositionOfStateDefinition is a specialization of
            StateDefinitionRelationship. It relates StateDefinition entities to one another, when
            two or more StateDefinition entities act as parts to compose a whole StateDefinition;
            and furthermore, whole StateDefinition entities can become parts of yet another whole
            StateDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConcurrentElements" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConcurrentElements is a specialization of StructuredTaskElement that
            comprises a set of actions to be performed during the time required for the longest
            task. No specific order is required. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StructuredTaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute elements to entity-->
               <xsd:element name="Elements" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElements to be performed. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="2"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Condition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Condition is a definition of the precedent that must be fulfilled
            before a statement or relationship becomes valid. NOTE: The condition is defined as a
            text based expression that is represented by the description attribute. The parameters
            against which the condition is to be evaluated are identified by ConditionParameter. The
            target or consequence of a condition is represented by ConditionAssignment. "If the
            engine has been running for 10000 hours then it requires a service" is an example of a
            conditional statement. The conditional part of the statement is "If the engine has been
            running for 10000 hours" which is stored in definition attribute on Condition. The
            parameter or subject of the condition is "the engine" which is represented by a
            ConditionParameter identifying the ProductAsRealized which represents the engine. The
            consequence of the condition is "then it requires a service". This is represented by
            ConditionAssignment identifying the task to perform the service, a TaskMethod.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Condition </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Condition.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Condition This Condition is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute parameters to entity-->
               <xsd:element name="Parameters" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ConditionParameters that represent the parameters
                        against which the condition is to be evaluated.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ConditionParameter" type="ConditionParameter"
                           minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ConditionRelationship" type="ConditionRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionalEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ConditionalEffectivity is a specialization of Effectivity for which
            the domain of applicability is defined by an explicit condition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute condition to entity-->
               <xsd:element name="Condition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Condition that defines the domain of applicability.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionAssignment is a relationship that identifies the statement or
            relationship to which a Condition applies. Condition 29 applies to the relationship
            between a Saab 9.3 car and the activity of checking the oil level on that make of car.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedCondition to entity-->
               <xsd:element name="AssignedCondition" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Condition that is being assigned. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionEvaluation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionEvaluation is a record of the evaluation of a Condition and
            the subsequent result. A Condition is "If the measured value of oil pressure from gauge
            3 on a car is less than 2 bar then check the oil level" When the condition is evaluated
            it is recorded by an instance of ConditionEvaluation. The measured value of oil pressure
            from gauge 3 on car with VIN 12345678 is 1.9 bar. Therefore the result of the evaluated
            the condition is true. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ConditionEvaluation
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ConditionEvaluation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ConditionEvaluation This ConditionEvaluation is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute result to LOGICAL type-->
               <xsd:element name="Result" type="xsd:boolean" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the indication whether the Condition evaluates to True,
                        False or Unknown. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute condition to entity-->
               <xsd:element name="Condition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Condition that has been evaluated. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute parameters to entity-->
               <xsd:element name="Parameters" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ConditionEvaluationParameters that represent the
                        parameters against which the condition has been
                        evaluated.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ConditionEvaluationParameter"
                           type="ConditionEvaluationParameter" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionEvaluationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionEvaluationAssignment is a relationship that identifies the
            statement or relationship to which the ConditionEvaluation applies. The
            ConditionEvaluation (instance 87) is assigned to the activity of checking the oil level
            on car VIN 12345678. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedConditionEvaluation to entity-->
               <xsd:element name="AssignedConditionEvaluation" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ConditionEvaluation that is being assigned.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionEvaluationParameter" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionEvaluationParameter is an identification of the product or
            activity data used in the evaluation of the Condition identified by the
            ConditionEvaluation. The measured value of oil pressure from gauge 3 on car with VIN
            12345678 (value = 1.9 bar). NOTE: The product or activity data is defined in
            ConditionEvaluationParameterSelect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ConditionEvaluationParameter. a set of text based descriptions of the
                        ConditionParameter. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ConditionEvaluationParameter This
                        ConditionEvaluationParameter is a member of the referenced class.a reference
                        to a class held externally to the exchange file that classifies this
                        ConditionParameter This ConditionParameter is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute evaluationParameter to SELECT-->
               <xsd:element name="EvaluationParameter" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product or activity data which acted as a parameter to
                        the ConditionEvaluation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionParameter" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionParameter is a representation of the product or activity data
            that is used to specify a Condition. Oil pressure on gauge 3. NOTE: The product or
            activity data is defined in ConditionParameterSelect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ConditionParameter.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ConditionParameter This ConditionParameter is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute parameter to SELECT-->
               <xsd:element name="Parameter" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product or activity data which acts as a parameter to
                        the condition. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ConditionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ConditionRelationship is a relation between two conditions.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Condition that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ContextualItemShape" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ContextualItemShape is a specialization of ItemShape that identifies
            the shape of a product version in the context of its use in another product version. The
            product version whose contextual shape is identified, is the product version associated
            with the ViewDefinitionRelationship of the ViewDefinitionUsage. Flexible part may have
            several shapes, each associated with a particular occurrence of the part in assemblies.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ItemShapeObject">
            <xsd:sequence>
               <!--EXPRESS attribute describedElement to entity-->
               <xsd:element name="DescribedElement" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ViewDefinitionRelationship that identifies the using
                        product version and the used product version. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute shapedProduct to entity-->
               <xsd:element name="ShapedProduct" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the ProductViewDefinition that identifies the definition of
                        the product version whose shape is considered. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ContextualShapeRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ContextualShapeRepresentation is a relationship that relates a
            ContextualItemShape and a GeometricModelRelationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute contextualShape to entity-->
               <xsd:element name="ContextualShape" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies a role of the ContextualItemShape for the
                        ContextualShapeRepresentation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute representingRelationship to entity-->
               <xsd:element name="RepresentingRelationship" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies a role of the GeometricModelRelationship for the
                        ContextualShapeRepresentation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Contract" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Contract is a binding agreement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Contract </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Contract.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Contract This Contract is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ContractRelationship" type="ContractRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ContractAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ContractAssignment is an association of a Contract with activity or
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedContract to entity-->
               <xsd:element name="AssignedContract" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Contract that is to be associated with activity or
                        product data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ContractRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ContractRelationship is a relationship between two Contract instances.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Contract that is a part of the
                        relationship. If one Contract in the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DatedEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DatedEffectivity is a specialization of Effectivity for which the
            domain of applicability is defined as an interval of time bounded by dates or events.
            The interval may be open-ended. Events may be used to bound a DatedEffectivity period,
            at planning phase. Depending on which of the DatedEffectivity and DatedEffectivity
            attributes are specified, the actual domain of time defined by a DatedEffectivity is:
            the time interval between the start and end date or event; the open time interval that
            starts at the start date or event; the open time interval that ends at the end date or
            event (i.e. the start is unknown). If the DatedEffectivity is an event that actually
            identifies a point in time that comes before the DatedEffectivity, then the actual
            domain of effectivity is empty. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute startBound to SELECT-->
               <xsd:choice>
                  <xsd:element name="StartBoundActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="StartBound" type="xsd:dateTime" minOccurs="0" maxOccurs="1"/>
               </xsd:choice>
               <!--EXPRESS attribute endBound to SELECT-->
               <xsd:choice>
                  <xsd:element name="EndBoundActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="EndBound" type="xsd:dateTime" minOccurs="0" maxOccurs="1"/>
               </xsd:choice>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DateTimeAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A DateTimeAssignment is a specialization of an AssignmentObject that
            represents the assignment of a date and time, DateTimeString with activity or product
            data. NOTE: The meaning of the assignment is determined by classification which is
            identified by the AssignmentObject property. The possible classifications are subclasses
            of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <!--EXPRESS attribute assignedDate to defined type-->
               <xsd:element name="AssignedDate" type="xsd:dateTime" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the date and time that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DecisionPoint" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DecisionPoint is a type of StructuredTaskElement. It requires a
            decision that determines which further TaskElement is to be followed. NOTE: The
            condition on which the decision is based optionally allows a further TaskElement to be
            invoked to provide the basis for the decision. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StructuredTaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute condition to entity-->
               <xsd:element name="Condition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the criterion to be tested in order to make a decision.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute trueCaseElement to entity-->
               <xsd:element name="TrueCaseElement" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement to be performed if the test condition is
                        satisfied. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute falseCaseElement to entity-->
               <xsd:element name="FalseCaseElement" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement to be performed if the test condition is
                        not satisfied. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute unknownCaseElement to entity-->
               <xsd:element name="UnknownCaseElement" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement to be performed if the test condition can
                        not be evaluated or returns unknown. The value of this attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DecreasingResourceEvent" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A DecreasingResourceEvent is a specialization of ResourceEvent that
            decreases the balance of a managed resource. Filling a requisition reduces an inventory.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ResourceEvent">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DefinedStateRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DefinedStateRelationship is a relationship that links a StateAssertion
            to a StateAssessment. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the DefinedStateRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definitiveState to entity-->
               <xsd:element name="DefinitiveState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the StateAssertion being related to the defined subject
                        State from StateAssessment. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute definedState to entity-->
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Descriptor" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A Descriptor is a set of words that describe something. The same thing
            may have multiple descriptions associated with it. Relating both a short description and
            a long description to an operational activity or an organization, as required by the US
            DoD Architecture Framework, are examples of multiple descriptions applied to the same
            item. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Descriptor
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute text to entity-->
               <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                  maxOccurs="unbounded"/>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Description This Description is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute descriptionContext to SELECT-->
               <xsd:element name="DescriptionContext" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the context in which the Descriptor has been made.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="Identifier" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Organization" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="DescriptorRelationship" type="DescriptorRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DescriptorRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A DescriptorRelationship is a relationship between a pair of
            Descriptors </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Descriptor that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DetailedGeometricModelElement" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A DetailedGeometricModelElement identifies a geometric construct. Only
            non abstract specializations of the DetailedGeometricModelElement entity data type can
            be instantiated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this DetailedGeometricModelElement This
                        DetailedGeometricModelElement is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DigitalDocumentDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DigitalDocumentDefinition is a specialization of DocumentDefinition.
            It identifies a collection of files that are archived on an optical computer disc,
            magnetic, electronic storage, or a combination thereof. A digital document definition
            may consist of one or many component digital files. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DocumentDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute files to entity-->
               <xsd:element name="Files" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="DigitalFile" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DigitalFile" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DigitalFile is a specialization of File. A DigitalFile contains
            computer interpretable data and is stored on an electronic device. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="File">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DirectedActivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DirectedActivity is a specialization of Activity. It identifies an
            activity that is governed by a WorkOrder. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Activity">
            <xsd:sequence>
               <!--EXPRESS attribute directive to entity-->
               <xsd:element name="Directive" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the WorkOrder that governs the DirectedActivity.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Direction" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Direction is a specialization of DetailedGeometricModelElement that
            defines a 2 or 3 dimensional vector. NOTE: A Direction is not located in a geometric
            space but is used in the definition of geometric entities like AxisPlacement.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute coordinates to defined type-->
               <xsd:element name="Coordinates" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="coordinates" type="xsd:double" minOccurs="2"
                           maxOccurs="3"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DistributionByValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A DistributionByValue is a specialization of ProbabilityDistribution
            that explicitly lists pairs of random variable values and function values. NOTE:
            DistributionByValue is used where there is no named distribution which can be used to
            identify the distribution, for example, when the distribution is derived from
            observation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProbabilityDistribution">
            <xsd:sequence>
               <!--EXPRESS attribute definedFunction to entity-->
               <xsd:element name="DefinedFunction" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a list of pairs consisting of a random variable value and
                        the corresponding function value. This represents a numerical approximation
                        to a probability distribution. NOTE: the value of random variable increases
                        strictly monotonically along the list. The distribution is the probability
                        generating function for an unfair dice ((1,0.1), (2,0.166),...,(6,0.23)).
                        Here each pair represents the value on the face and the probability of it
                        occurring. The probability of rolling a 1 or a 2 is therefore (0.1 + 0.166).
                        The distribution is a cumulative distribution function for the measured
                        length of a component ((2.1, 0.0), (2.2, 0.1), (2.3, 0.6), (2.4, 1.0)) Here
                        each pair represents a length and the probability that the component exceeds
                        that length. The probability that the component is between 2.2m and 2.3m
                        long is therefore 0.5 (0.6 - 0.1). </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute distributionFunction to entity-->
               <xsd:element name="DistributionFunction" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the type of function which the (random variable, function
                        value) pair list represents. NOTE: Probabilities may be described by a
                        number of different types of functions, such as the cumulative distribution
                        function, the probability density function for continuous distributions or
                        the probability generation function for discrete distributions. Each
                        function is identified through reference-data. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Document" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Document is a specialization of Product used to identify documentation
            data that is under configuration change management. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DocumentAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DocumentAssignment is a mechanism to associate a document with product
            data, where the assigned document provides information about the data with which it is
            associated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedDocument to SELECT-->
               <xsd:element name="AssignedDocument" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Document, DocumentVersion, DigitalDocumentDefinition or
                        File that is used to provide information. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DocumentDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A DocumentDefinition is a specialization of ProductViewDefinition that
            is a DocumentVersion in a particular format. NOTE: A DocumentVersion may have more than
            one representation. A version of a logical document, which contains a shape model, may
            be represented in the native formats of different CAD systems. Each DocumentDefinition
            is a DigitalDocumentDefinition or a PhysicalDocumentDefinition. NOTE: Aspects of the
            representation may not be known at the time the identification is established.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="DocumentDefinitionRelationship"
                  type="DocumentDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DocumentDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DocumentDefinitionRelationship is a relationship between two instances
            of DocumentDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the DocumentDefinitionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the other instance of DocumentDefinition that participates
                        in the relationship. If one element of the relationship is dependent upon
                        the other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="DocumentVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A DocumentVersion is a specialization of ProductVersion A
            DocumentVersion identifies a particular version of a document. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Effectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An Effectivity is the identification of a domain of applicability.
            NOTE: Instances of Effectivity may be applied to any kind of product or activity data.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Effectivity
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Effectivity.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Effectivity This Effectivity is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="EffectivityRelationship" type="EffectivityRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EffectivityAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An EffectivityAssignment is the association of an Effectivity with
            product or activity data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedEffectivity to entity-->
               <xsd:element name="AssignedEffectivity" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instance of the Effectivity entity that is assigned.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EffectivityRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An EffectivityRelationship is an association between two instances of
            Effectivity. The meaning of the relationship is represented with the relationType
            attribute. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the second instance of EffectivityRelationship that is a
                        part of the relationship. NOTE: If one EffectivityRelationship in the
                        relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ElementConstraint" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ElementConstraint is a specialization of TaskElementRelationship that
            signifies a constraint between TaskElements. The constraint may only apply within the
            context of a TaskMethod or TaskElement, specified as the context. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElementRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute appliesIn to SELECT-->
               <xsd:element name="AppliesIn" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement within which the constraint applies. The
                        value of this attribute need not be specified. Within a specific method, use
                        of test equipment must be preceded by calibration. Or a 30 minute wait is
                        required between stages of a method. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EndTask" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An EndTask is a type of TaskElement. It signifies a point at which to
            end the task. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Envelope" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Envelope is an historical record of the transmission of a Message. It
            is used to record the audit data for sending and acknowledging a Message. Because it is
            an historical record, each Envelope is only used once, and so is not versioned.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Envelope </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Envelope This Envelope is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute acknowledge to entity-->
               <xsd:element name="Acknowledge" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the request for and acknowledgement of receipt of the
                        Envelope. The value of this attribute need not be specified. On transmission
                        of a Message this attribute shall take one of the values "" (blank), "ask
                        message arrival" or "ask message read". A blank value expects no reply. A
                        value of "ask message arrival" asks if the Message arrived at the
                        recipients' mailbox, and requires the reply Envelope to have values
                        "acknowledge arrival" if the Message arrives at the destination, or
                        "delivery failure" if failure of the delivery is detected. NOTE: Envelope is
                        used to provide an audit trail. There is no assumption that the transmission
                        system has any knowledge of Envelope or its usage. However, if it reports
                        some failure, this can then be recorded in the way described. A value of
                        "ask message read" asks if the recipient has actually opened the Message to
                        read it, and expects the reply "acknowledge read" on success, or "contents
                        corrupt" if it is not possible to for it to be read. NOTE: For any single
                        Envelope, there should be an acknowledgement per recipient. The
                        acknowledgement will not contain a Message. NOTE: The Envelope being
                        acknowledged is referenced using an EnvelopeRelationship.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute wrapping to entity-->
               <xsd:element name="Wrapping" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Message that the Envelope is wrapping. A Message should
                        be present unless the Envelope is being used to carry an acknowledgement.
                        The value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="EnvelopeRelationship" type="EnvelopeRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvelopeRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An EnvelopeRelationship is an association of one Envelope with another.
            NOTE: The most obvious use of the association is to link an Envelope to its
            acknowledgements. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of the Envelope participating in the
                        relationship. If one Envelope participating in the relationship is dependent
                        upon the other, this attribute shall be the dependent one.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvironmentAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A EnvironmentAssignment is an assignment of a product to the
            environment in which it operates or is supported. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedEnvironment to entity-->
               <xsd:element name="AssignedEnvironment" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the EnvironmentDefinitionView in which the product is
                        supported or operates. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvironmentDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An EnvironmentDefinition is a specialization of Product that is used to
            identify the definition of typical environment in which a product is to be, has been or
            is planned to be deployed in, operated in, or supported in. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvironmentDefinitionVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A EnvironmentDefinitionVersion is a specialization of ProductVersion
            that identifies a particular version of an EnvironmentDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvironmentDefinitionView" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A EnvironmentDefinitionView is a specialization of
            ProductViewDefinition that provides a view of a version of an environment definition
            relevant for one or more application domains. This view collects the characteristics
            that define an environment. NOTE: The characteristics include the resources available,
            the locations in which the product is to operate as well as climatic conditions such
            temperature ranges. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="EnvironmentViewDefinitionRelationship"
                  type="EnvironmentViewDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="EnvironmentViewDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A EnvironmentViewDefinitionRelationship is a specialization of
            ViewDefinitionRelationship that represents an association between two
            EnvironmentDefinitionView instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Evidence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Evidence is a collector of items used together to provide a single
            piece of evidence within a validation or verification. For example a document and its
            approval by a customer may be used together to provide evidence of customer acceptance.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Evidence </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Evidence.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Evidence This Evidence is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute supports to SELECT-->
               <xsd:element name="Supports" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> identifies the validation or verification for which this
                        evidence has been related. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute items to SELECT-->
               <xsd:element name="Items" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the component data items used to support this evidence.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="ActivityActual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Scheme" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SchemeEntry" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SchemeVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EndTask" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ExitLoop" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StartTask" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StructuredTaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ConcurrentElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SimultaneousElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DecisionPoint" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="LoopingElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatCount" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatUntil" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatWhile" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementSequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementLevels" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskInvocation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AdvisoryTaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethodVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityRelationship" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityHappening" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ApprovalAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CertificationAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Classification" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ContractAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DateTimeAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EffectivityAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InformationUsageRightAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="JustificationAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="JustificationRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="JustificationSupportAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservationAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentToDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentToDefinitionVersion"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentToDefinitionView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PersonInOrganization" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Product" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Analysis" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlot" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Collection" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Document" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceConnector" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Part" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Requirement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Risk" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="System" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDesign" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DocumentVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDesign" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsPlanned" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequirementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductVersionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AnalysisVersionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AnalysisVersionSequence" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="CollectionVersionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="CollectionVersionSequenceRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementVersionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SuppliedPartRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemVersionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemVersionSequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisDisciplineDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="BreakdownElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneElementDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="DocumentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DigitalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RiskViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskPerception" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProjectAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PropertyDefinitionAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PropertyValue" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Probability" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityByName" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityNumeric" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityDerived" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityGenerator" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityDistribution" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="DistributionByValue" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ParameterizedDistribution" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="StringValue" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueList" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueSet" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueWithUnit" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="NumericalValue" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProbabilityDerivationParameter" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProbabilityDistributionParameter" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProbabilityFunctionValue" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProbabilityNumericValue" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RandomVariable" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueLimit" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueRange" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ValueWithTolerances" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PropertyValueAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Proxy" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RiskImpactAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SecurityClassificationAssignment" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Validation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Verification" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ViewDefinitionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AssemblyViewRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ComponentUpperLevelIdentification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="NextAssemblyViewUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PromissoryAssemblyViewUsage" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="CausalConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RelatedConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequirementViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementCollectionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="TracingRelationship" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskPerceptionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ViewDefinitionUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalElementUsage" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="MakeFromRelationship" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductInAttachmentSlot" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExchangeContextClassLibrary" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ExchangeContextClassLibrary is a representation of a universal
            resource identifier for the OWL reference-data library that provides the context for an
            exchange of data. NOTE: Each data exchange takes place in the context of a single OWL
            class library that references any other OWL libraries that are required.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute libraryId to defined type-->
               <xsd:element name="LibraryId" type="xsd:anyURI" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the URI by which the ExchangeContextClassLibrary is
                        referenced and identified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExitLoop" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExitLoop is a type of StructuredTaskElement. It signifies a point at
            which to exit from a loop. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExpandedUncertainty" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExpandedUncertainty is a specialization of StandardUncertainty that
            specifies the factor of an uncertainty. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StandardUncertainty">
            <xsd:sequence>
               <!--EXPRESS attribute coverageFactor to base type-->
               <xsd:element name="CoverageFactor" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the multiplier of the uncertainty of the value.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExperienceGained" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExperienceGained is a relationship between an ExperienceInstance and
            a person or organization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ExperienceGained This ExperienceGained is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute experienceOf to entity-->
               <xsd:element name="ExperienceOf" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExperienceInstance undergone by a person or
                        organization. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute gainedBy to SELECT-->
               <xsd:element name="GainedBy" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the person or organization that undergoes the
                        ExperienceInstance. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExperienceInstance" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExperienceInstance is a particular episode of contact with and/or
            observation of facts or events which contributes to the accumulation of knowledge or
            skill. Changing the exhaust system on a car. 2 years work on same type of milling
            machine. 100 flying hours in a Tornado jet. 5 years as Workshop Manager. The nature,
            duration and worth of the ExperienceInstance can be described using assigned properties
            or by referring to activities or tasks. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ExperienceInstance
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ExperienceInstance.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ExperienceInstance This ExperienceInstance is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute isDefinedBy to entity-->
               <xsd:element name="IsDefinedBy" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> an experience instance contributes to the definition of the
                        experience gained. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute consistsOf to SELECT-->
               <xsd:element name="ConsistsOf" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Activity or ResourceAsRealized that provides the
                        content of the ExperienceInstance. The value of the attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExperienceType" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExperienceType is a category or class of experience. welding
            mechanical design flying </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ExperienceType
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ExperienceType.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute consistsOf to SELECT-->
               <xsd:element name="ConsistsOf" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ActivityMethod or RequiredResource that provides the
                        content of the ExperienceType. The value of the attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ExperienceTypeRelationship" type="ExperienceTypeRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExperienceTypeRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExperienceTypeRelationship is used to relate a compound experience to
            its component experiences. Ten years programming experience made up of five years C++
            programming experience and five years Java programming experience. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute compoundExperience to entity-->
               <!--EXPRESS attribute componentExperience to entity-->
               <xsd:element name="ComponentExperience" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExperienceType that the ExperienceTypeRelationship
                        identifies as a component of another ExperienceType. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalAnalysisModel" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExternalAnalysisModel is a specialization of AnalysisModel whose
            content is provided in an external file. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AnalysisModelObject">
            <xsd:sequence>
               <!--EXPRESS attribute externalFile to entity-->
               <xsd:element name="ExternalFile" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the DigitalFile that contains the analysis representation.
                        The external file may be an analysis representation defined using AP209 in
                        Physical File Format, or a tool specific format. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalClass" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalClass defines a relationship between a datatype and an
            non-OWL reference-data class of which instances of the datatype are members.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ExternalClass.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the identification of the ExternalClass.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="1" maxOccurs="1"
                        />
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute source to SELECT-->
               <xsd:element name="Source" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the document that provides the definition for the
                        ExternalClass. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalGeometricModel" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExternalGeometricModel is a specialization of 3D GeometricModel whose
            content is provided in an external file. The set of items of the ExternalGeometricModel
            contains only one element that shall be an AxisPlacement. This AxisPlacement specifies
            the reference location and orientation with respect to which placement of the
            ExternalGeometricModel in other GeometricModels shall be defined. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricModel">
            <xsd:sequence>
               <!--EXPRESS attribute items to entity-->
               <!--EXPRESS attribute externalFile to entity-->
               <xsd:element name="ExternalFile" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the DigitalFile that contains the external geometry
                        information. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalItem" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalItem is the representation of a reference to an object or
            item that is external to the data exchange file. The location of a digital file in a
            file system. A section in a document. A definition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ExternalItem.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the identification of the ExternalItem.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="1" maxOccurs="1"
                        />
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute source to SELECT-->
               <xsd:element name="Source" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the document within which the ExternalItem is defined.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalOwlClass" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalOwlClass defines a relationship between a datatype and an
            OWL reference-data class of which instances of the datatype are members. The OWL class
            is defined and managed in an ontology external to the data exchange file.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute class to defined type-->
               <xsd:element name="Class" type="xsd:anyURI" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Uniform Resource Identifier (normally an http:// URL)
                        that specifies the OWL reference-data class of which referenced instances
                        are members. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalOwlObject" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalOwlObject states that a block instance is the same as an OWL
            reference-data item. NOTE: This capability is similar in nature to the ProxyObject
            built-in property in the World Wide Web Consortium Web Ontology Language, available from
            their Web site. ProxyObject indicates that two individuals or classes have the same
            'identity'. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute individual to defined type-->
               <xsd:element name="Individual" type="xsd:anyURI" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Uniform Resource Identifier (normally an http:// URL)
                        that provides the identification and location of the OWL file and the
                        relevant reference-data item within it. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalPropertyDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalPropertyDefinition is a reference to a property definition
            that is defined externally to the exchange file. A Property definition is the definition
            of a particular quality or feature of a product or activity data. A Property definition
            may reflect physics or arbitrary user defined measurements. Colour is a property of
            product and is defined by a red, green and blue values. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ExternalPropertyDefinition. This
                        ExternalPropertyDefinition is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which the ExternalPropertyDefinition is
                        a proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        ExternalPropertyDefinition.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute allowedUnits to entity-->
               <xsd:element name="AllowedUnits" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ExternalUnit" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="PropertyDefinitionRelationship"
                  type="PropertyDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalTypeQualifier" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ExternalTypeQualifier is a reference to the specification of the
            type of a datum that is defined externally to the exchange file. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which the ExternalTypeQualifier is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ExternalUnit" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ExternalUnit is a unit quantity. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ExternalUnit This ExternalUnit is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        ExternalUnit.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="File" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A File is a file stored on a computer system or in a stack of
            non-digital documents. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the File </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute versionIds to entity-->
               <xsd:element name="VersionIds" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of version identifiers for the File.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute containedDataType to entity-->
               <xsd:element name="ContainedDataType" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a string that provides information about the kind of data
                        stored in the file. The value of this attribute need not be specified. Where
                        applicable, the following values shall be used: 'geometry': The file
                        contains a shape model; 'NC data': The file contains numerical control data;
                        'FE data': The file contains finite element data; 'sample data': The file
                        represents measured data; 'process plan': The document file represents
                        process planning data; 'check plan': The document file represents quality
                        control planning data; 'drawing': The document file represents a technical
                        drawing. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this File This File is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute locations to entity-->
               <xsd:element name="Locations" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ExternalItem" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the File.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="FileRelationship" type="FileRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FileRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FileRelationship is a relationship between two instances of File. A
            service manual may contain graphics for explanatory reasons. In this case, the File
            instances that contain the graphics are referenced as related from the File instance
            that contains the body of the service manual with DocumentDefinitionRelationship
            'reference'. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of File that participates in the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalBreakdown" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalBreakdown is a specialization of Breakdown that identifies a
            partitioning of a product into a set of related functional elements so as to form
            explicit structural views that comprise the product elements. The composite - component
            view is represented by FunctionalElementUsage instances relating the functional elements
            in the breakdown which are represented by FunctionalElements. A functional breakdown
            provides a decomposition of an aircraft in terms of high-level functional processes such
            as flight, taxiing and at rest all the way down to low-level processes such as detect
            on-board fuel level, move tail rudder and provide standard tow attachment point.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Breakdown">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalBreakdownContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalBreakdownContext is a specialization of BreakdownContext
            that is an association of a FunctionalElement to a FunctionalBreakdown of which the
            functional element is a member. A function 'provide load lifting capability' is member
            of the functional breakdown of a helicopter. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownContext">
            <xsd:sequence><!--EXPRESS attribute breakdown to entity--><!--EXPRESS attribute breakdownElement to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalBreakdownVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalBreakdownVersion is a specialization of BreakdownVersion
            that identifies a version of a FunctionalBreakdown </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalElement is a specialization of BreakdownElement that
            identifies the elements in one or more FunctionalBreakdown instances.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElement">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalElementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalElementDefinition is a specialization of
            BreakdownElementDefinition that identifies a view of a version (
            FunctionalElementVersion ) of a FunctionalElement </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="FunctionalElementUsage" type="FunctionalElementUsage"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalElementUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalElementUsage is a specialization of BreakdownElementUsage
            that is an association of a functional element to another functional element that is a
            constituent. FunctionalElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementUsage">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionalElementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionalElementVersion is a specialization of
            BreakdownElementVersion that identifies a version of a FunctionalElement
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="FunctionValuePair" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A FunctionValuePair is a single random variable/value pair, thus
            defining a single point on the distribution curve of a numerically defined distribution.
            The distribution function for the tossing of two coins uses the number of heads as the
            random variable and the probability as value of the function, and has the form of a list
            of three pairs ((0, 0.25), (1, 0.5), (2, 0.25)) - 0, 1 and 2 being the random variable
            values, 0.25, 0.5 and 0.25 being the probability values. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute functionValue to entity-->
               <xsd:element name="FunctionValue" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value of the probability function for the given random
                        variable value. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProbabilityFunctionValue" type="ProbabilityFunctionValue"
                           minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute variableValue to entity-->
               <xsd:element name="VariableValue" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value of the random variable. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="RandomVariable" type="RandomVariable" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricCompositionWithOperatorTransformation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricCompositionWithOperatorTransformation is a specialization of
            GeometricRelationshipWithOperatorTransformation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricRelationshipWithOperatorTransformation">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricCompositionWithPlacementTransformation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricCompositionWithPlacementTransformation is a specialization of
            GeometricRelationshipWithPlacementTransformation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricRelationshipWithPlacementTransformation">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricCoordinateSpace" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricCoordinateSpace is a type of ChainedGeometricModelLinkSelect
            that defines a coordinate space where geometric elements can be defined. It is either
            two-dimensional or three-dimensional. There shall be at least two units specified for
            the GeometricCoordinateSpace: one length unit and one plane angle unit. The length unit
            applies to each coordinate direction. The length unit millimetre and the angle unit
            radian are examples of units that may assigned to a GeometricCoordinateSpace. NOTE: The
            origin for coordinate values is implicitly defined as being the cartesian point whose
            coordinates are all zero. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute dimensionCount to base type-->
               <xsd:element name="DimensionCount" type="xsd:integer" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the dimensionality of the geometric space.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute units to entity-->
               <xsd:element name="Units" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ExternalUnit" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute accuracies to entity-->
               <xsd:element name="Accuracies" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the uncertainty measures that apply. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricItemSpecificUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A GeometricItemSpecificUsage is an identification of a
            DetailedGeometricModelElement within a GeometricModel or an ExternalGeometricModel as
            being the element that describes a ShapeElement or ShapeElementRelationship of an
            ItemShape that is described by the GeometricModel or an ExternalGeometricModel. In an
            application protocol, an instance of GeometricModel describes the ItemShape of a
            product. One element of the GeometricModel - a curve - represents the boundary of a hole
            that is a ShapeElement in the product. This entity data type may be used to state that
            the curve describes the hole, in the context of the entire GeometricModel describing the
            shape of the product. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        GeometricItemSpecificUsage. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the role of the ShapeElement that is being
                        represented by the GeometricItemSpecificUsage for the
                        GeometricItemSpecificUsage. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute identifiedItem to entity-->
               <xsd:element name="IdentifiedItem" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the role of the DetailedGeometricModelElement for
                        the GeometricItemSpecificUsage. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="DetailedGeometricModelElement"
                           type="DetailedGeometricModelElement" minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute usedModel to entity-->
               <xsd:element name="UsedModel" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the role of the GeometricModel that includes the
                        GeometricItemSpecificUsage in it's set of items. The usedModel describes the
                        ItemShape for the GeometricItemSpecificUsage. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricModel" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A GeometricModel is a model comprising geometric constructs. The
            GeometricModel is founded in a GeometricCoordinateSpace. The items of a GeometricModel
            are instances of DetailedGeometricModelElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the GeometricModel
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute versionIds to entity-->
               <xsd:element name="VersionIds" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of version identifiers for the GeometricModel.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute modelExtent to defined type-->
               <xsd:element name="ModelExtent" type="xsd:double" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the LengthMeasure that specifies the radius of a sphere
                        that encloses all elements of the geometric model. The centre of the sphere
                        is located at the origin of the GeometricCoordinateSpace of the
                        GeometricModel. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute contextOfItems to entity-->
               <xsd:element name="ContextOfItems" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the GeometricCoordinateSpace in which the GeometricModel is
                        defined. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="GeometricCoordinateSpace" type="GeometricCoordinateSpace"
                           minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute items to entity-->
               <xsd:element name="Items" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instances of DetailedGeometricModelElement that are
                        included in the GeometricModel. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="DetailedGeometricModelElement"
                           type="DetailedGeometricModelElement" minOccurs="1" maxOccurs="unbounded"
                        />
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricModelRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricModelRelationship is a type of
            ChainedGeometricModelLinkSelect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute rep1 to entity-->
               <xsd:element name="Rep1" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> one of the instances of GeometricModel that is a part of
                        the relationship. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute rep2 to entity-->
               <xsd:element name="Rep2" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of GeometricModel that is a part of the
                        relationship. If one element of the relationship is the dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricModelRelationshipWithTransformation" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A GeometricModelRelationshipWithTransformation is a specialization of
            GeometricModelRelationship. A GeometricModelRelationshipWithTransformation may be a
            GeometricRelationshipWithPlacementTransformation or a
            GeometricRelationshipWithOperatorTransformation </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricModelRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricOperatorTransformation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricOperatorTransformation is a specialization of
            GeometricPlacementOperation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricPlacementOperation">
            <xsd:sequence>
               <!--EXPRESS attribute target to SELECT-->
               <xsd:element name="Target" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CartesianTransformationSelect that identifies the
                        target of the transformation. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricPlacement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricPlacement is a specialization of GeometricPlacementOperation.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricPlacementOperation">
            <xsd:sequence>
               <!--EXPRESS attribute target to entity-->
               <xsd:element name="Target" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AxisPlacement that identifies the target of the
                        placement. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="AxisPlacement" type="AxisPlacement" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricPlacementModel" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricPlacementModel is a specialization of GeometricModel.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricModel">
            <xsd:sequence><!--EXPRESS attribute items to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricPlacementOperation" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A GeometricPlacementOperation is a specialization of
            DetailedGeometricModelElement. A GeometricPlacementOperation may be a GeometricPlacement
            or a GeometricOperatorTransformation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DetailedGeometricModelElement">
            <xsd:sequence>
               <!--EXPRESS attribute source to entity-->
               <xsd:element name="Source" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AxisPlacement that identifies the source of the
                        operation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="AxisPlacement" type="AxisPlacement" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute templateDefinition to entity-->
               <xsd:element name="TemplateDefinition" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value from GeometricModel. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricRelationshipWithOperatorTransformation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricRelationshipWithOperatorTransformation is a specialization of
            GeometricModelRelationshipWithTransformation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricModelRelationshipWithTransformation">
            <xsd:sequence>
               <!--EXPRESS attribute transformation to SELECT-->
               <xsd:element name="Transformation" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the CartesianTransformationSelect that identifies the
                        transformation for the GeometricRelationshipWithOperatorTransformation.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GeometricRelationshipWithPlacementTransformation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GeometricRelationshipWithPlacementTransformation is a specialization
            of GeometricModelRelationshipWithTransformation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="GeometricModelRelationshipWithTransformation">
            <xsd:sequence>
               <!--EXPRESS attribute transformation to entity-->
               <xsd:element name="Transformation" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the AxisPlacementMapping that identifies the transformation
                        for the GeometricRelationshipWithPlacementTransformation.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="GlobalLocationRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A GlobalLocationRepresentation is a type of LocationRepresentation
            specified using geographic means in the global system and values, which could be
            physical or political geographic values. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LocationRepresentation">
            <xsd:sequence>
               <!--EXPRESS attribute altitude to entity-->
               <xsd:element name="Altitude" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the height above sea-level of the location. The
                        value of the attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute geographicalArea to entity-->
               <xsd:element name="GeographicalArea" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the geographical, physical or political region of
                        the indicated location, such as Europe, North America, Berlin or Indian
                        Ocean. The precise location can be further detailed within refinements. The
                        value of the attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute latitude to entity-->
               <xsd:element name="Latitude" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the angular distance of a place north or south of the
                        equator. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute longitude to entity-->
               <xsd:element name="Longitude" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the angular distance of a place east or west of the
                        Greenwich meridian. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Hardcopy" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Hardcopy is a specialization of File that represents a non-digital
            document. An actual stack of paper consisting of one or more sheets, on which some
            product data is written, printed or plotted. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="File">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="HierarchicalInterfaceConnection" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A HierarchicalInterfaceConnection is a specialization of
            InterfaceConnection that provides an interconnection between components at different
            levels in an assembly. Each connection point in the assembly is represented by a
            InterfaceConnectorOccurrence. An appliance such as a television has a power lead and
            attached plug. The plug and power lead could be represented as an assembly of parts such
            as the plug pins and wires. Each connection point of the pins and wires in the assembly
            is represented by a InterfaceConnectorOccurrence and an instance of the
            HierarchicalInterfaceConnection entity data type identifies the connection of the pins
            (the parts) to the plug (the assembly) in the assembly. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="InterfaceConnection">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Identifier" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An Identifier provides the identifying name or code for the activity or
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Identifier This Identifier is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="IdentifierRelationship" type="IdentifierRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
            <xsd:attribute name="id" type="xsd:string" use="required"/>
            <xsd:attribute name="idContextRef" type="xsd:IDREF"/>
            <xsd:attribute name="idRoleRef" type="xsd:IDREF" use="required"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="IdentifierRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A IdentifierRelationship is a relationship between a pair of
            Identifiers. NOTE: The meaning of the relationship is determined by classification which
            is identified by the RelationshipObject property. The possible classifications are
            subclasses of . ISO is an acronym for "International Standard Organization". When ISO
            and "International Standard Organization" are used as identifiers for the ISO
            organization, they may be related to indicate that ISO is the acronym for "International
            Standard Organization". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Identifier that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="IncreasingResourceEvent" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A IncreasingResourceEvent is a type of ResourceEvent that increases the
            balance of a managed resource. Purchasing new stock increases an inventory.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ResourceEvent">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InformationRight" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An InformationRight is a definition of what may or may not be done with
            information in the sense of legal rights and obligations. NOTE: This a general purpose
            definition of a right that may be applied to many things. The usage of the
            InformationRight is represented by InformationUsageRight. The application of that right
            to information is represented by InformationUsageRightAssignment. Copyright is an
            InformationRight. For the purposes of developing a new system, details of government
            furnished equipment may be made available to a particular project team. The team may
            copy and use the information internally, but may not pass it on, either to a third part,
            or to another team, and must destroy the information at the end of the contract.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the InformationRight
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the InformationRight.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this InformationRight This InformationRight is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute restriction to entity-->
               <xsd:element name="Restriction" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that describes any conditions and limitations that
                        apply to the exercise of the right. The value of this attribute need not be
                        specified. The description of the right states that copying is permitted
                        within the project team only, whereas the restriction notes the additional
                        constraint that the information must be destroyed at the end of the project.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InformationUsageRight" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InformationUsageRight is an application an InformationRight to a
            particular usage context. NOTE: One view of the distinction between an InformationRight
            and an InformationUsageRight is that the InformationRight represents a standard clause
            in a contract, whereas an InformationUsageRight represents the fact that the clause is
            used in a particular contract. NOTE: The context for the usage can be defined through
            the contract which defines the right, the organization that grants the right, the person
            or organization which is granted the right, and any dates such as the starting or ending
            dates for the right. The meaning of each association is identified through the roles of
            the assignments, and these are defined through reference-data. NOTE: The Approval of an
            InformationUsageRight carries the meaning that the right is granted to all information
            items in the relevant context, as opposed to the approval of an
            InformationUsageRightAssignment which is limited to particular items. NOTE:
            InformationUsageRight provides a mechanism for recording significant rights within a
            product database. The legal significance of the presence or absence of a right is
            outside the scope of this part of ISO 10303 </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the InformationUsageRight
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        InformationUsageRight. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this InformationUsageRight This InformationUsageRight is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute comment to entity-->
               <xsd:element name="Comment" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the additional information to be recorded about the
                        InformationUsageRight. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute grantsRight to entity-->
               <xsd:element name="GrantsRight" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="InformationRight" type="cmn:Reference" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="InformationUsageRightRelationship"
                  type="InformationUsageRightRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InformationUsageRightAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InformationUsageRightAssignment is an application of a particular
            usage right to a set of items. NOTE: If an approval is applied to this entity, it
            carries the meaning that the particular set of items is approved for the given usage.
            This approval generally indicates that the approval is exceptional, for example, where
            the information belongs to another project, and that project agrees to share some
            particular items of information. There is a further implication that the set of entities
            should not be changed once the approval is given. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedInformationUsageRight to entity-->
               <xsd:element name="AssignedInformationUsageRight" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the InformationUsageRight that is assigned to activity or
                        product data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InformationUsageRightRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InformationUsageRightRelationship is the relationship of one
            InformationUsageRight to another. Where one InformationUsageRight supercedes another,
            then the original right is pointed to by the relating attribute, its replacement by the
            related attribute, and the relationType attribute takes the value "supercedes".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of InformationUsageRight that is a part
                        of the relationship. If one InformationUsageRight participating in the
                        relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnection" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A InterfaceConnection is an interconnection between a connected pair of
            InterfaceConnectorOccurrences. Each InterfaceConnectorOccurrence represents the place
            where a product used in an assembly can interact with other products in the assembly. An
            appliance such as a television has a power lead and attached plug. The plug and power
            lead could be represented as an assembly of parts such as the plug pins and wires. Each
            connection point of the pins and wires in the assembly is represented by a
            InterfaceConnectorOccurrence and an instance of the InterfaceConnection entity data type
            identifies the connection of the pins to the wires in the assembly. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the InterfaceConnection
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        InterfaceConnection. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this InterfaceConnection This InterfaceConnection is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute connecting to SELECT-->
               <xsd:element name="Connecting" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> one of the instances of the connected pair of
                        InterfaceConnectorOccurrences. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute connected to SELECT-->
               <xsd:element name="Connected" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of the connected pair of
                        InterfaceConnectorOccurrences. If one element of the relationship is
                        dependent upon the other, this attribute shall be the dependent one.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnector" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An InterfaceConnector is a specialization of Product that identifies a
            part of a product with which one or more other products or the environment interacts.
            NOTE: This is sometimes referred to as a "port". A computer has a socket to which to
            connect a network cable. An instance of the InterfaceConnector entity data type
            identifies the role of the socket in the interface and is the subject of a specification
            that defines the necessary geometrical and electrical attributes to ensure a functioning
            interface between the computer and network hardware. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorAsPlanned" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorAsPlanned is a specialization of
            InterfaceConnectorVersion that identifies an individual that is the subject of a plan to
            realize an InterfaceConnector. Company Acme Limited is planning to produce an aircraft
            with serial number 1234 next month. This aircraft has connectors on each engine for fuel
            pipes. The company wishes to plan when each connector will be realized and then identify
            a date on which an inspector can test all the realized connectors. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="InterfaceConnectorVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorAsRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorAsRealized is a specialization of
            InterfaceConnectorVersion that identifies an individual that is a realized
            InterfaceConnector. Company WeFlySafest Corporation owns and operates an aircraft with
            serial number 1234. When landing at Heathrow airport, the pilot reports a loss of fuel
            pressure on engine number 4 with serial number A9876 and recommends that an inspector
            tests the realized connector on the engine. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="InterfaceConnectorVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorDefinition is a specialization of
            ProductViewDefinition that identifies a view of an InterfaceConnectorVersion. A
            reliability engineer assesses the likely failure modes of design version 3.8 for the
            connector between a brake unit and the hydraulic control system. The engineer generates
            a set of data that is a specific view of the connector. An instance of the
            InterfaceConnectorDefinition entity data type collects these data together.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute connectorOn to entity-->
               <xsd:element name="ConnectorOn" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item for which the InterfaceConnectorDefinition
                        provides an interface capability. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorDesign" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorDesign is a specialization of
            InterfaceConnectorVersion that identifies a design version of an InterfaceConnector.
            BuildAWidget Incorporated creates design version 2.10 for an electrical supply
            connector. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="InterfaceConnectorVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorDesignToPlanned" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorDesignToPlanned is a relationship between a design
            version of an InterfaceConnector and a planned individual that is to conform to the
            design. BuildAWidget Incorporated plans production of pump serial number 30301 with an
            electrical supply connector that is to conform to design version 2.10.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute design to entity-->
               <xsd:element name="Design" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version to which the planned individual will conform.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute planned to entity-->
               <xsd:element name="Planned" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that is to conform to the design version.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorDesignToRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorDesignToRealized is a relationship between a design
            version of an InterfaceConnector and a realized individual that conforms to the design.
            BuildAWidget Incorporated builds pump serial number 30301 with an electrical supply
            connector that conforms to design version 2.11. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute design to entity-->
               <xsd:element name="Design" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version to which the realized individual conforms.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realized to entity-->
               <xsd:element name="Realized" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that conforms to the design.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorOccurrence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A InterfaceConnectorOccurrence is an occurrence of a
            InterfaceConnectorDefinition. The InterfaceConnectorOccurrence represents the place
            where a product used in an assembly can interact with other products in the assembly.
            The interaction is represented by a InterfaceConnection. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the InterfaceConnectorOccurrence
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        InterfaceConnectorOccurrence. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this InterfaceConnectorOccurrence This
                        InterfaceConnectorOccurrence is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute occurrenceOf to entity-->
               <xsd:element name="OccurrenceOf" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the InterfaceConnectorDefinition of which the
                        InterfaceConnectorOccurrence is an occurrence of. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute connectorOn to SELECT-->
               <xsd:element name="ConnectorOn" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item for which the InterfaceConnectorOccurrence
                        provides an interface capability. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorPlannedToRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorPlannedToRealized is a relationship between a
            realized individual of an InterfaceConnector and a corresponding planned individual.
            BuildAWidget Incorporated builds pump serial number 30302 with an electrical supply
            connector that was previously planned. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute planned to entity-->
               <xsd:element name="Planned" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that relates to the realized individual.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realized to entity-->
               <xsd:element name="Realized" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the individual that relates to the planned individual.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceConnectorVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceConnectorVersion is a specialization of ProductVersion that
            identifies a version of an InterfaceConnector. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceDefinitionConnection" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A InterfaceDefinitionConnection is an interconnection between a
            connected pair of InterfaceConnectorDefinitions or, if the point of interconnection is
            not specified, the interconnection between a pair of views ( ProductViewDefinitions) on
            products A socket in the wall provides access to the domestic electricity supply. An
            appliance such as a television has a power lead and plug that fits into the socket. An
            instance of the InterfaceDefinitionConnection entity data type identifies this fitting
            of the plug into the socket. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the InterfaceDefinitionConnection
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        InterfaceDefinitionConnection. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this InterfaceDefinitionConnection This
                        InterfaceDefinitionConnection is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute connecting to entity-->
               <xsd:element name="Connecting" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> one of the instances of the connected pair of
                        InterfaceConnectorDefinitions, or if the point of interconnection is not
                        specified, the interconnection between a pair of ProductViewDefinitions.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute connected to entity-->
               <xsd:element name="Connected" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of the connected pair of
                        InterfaceConnectorDefinitions or ProductViewDefinitions. If one element of
                        the relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceDefinitionFor" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceDefinitionFor is a relationship between an
            InterfaceSpecification and an item that conforms to the specification. The infrared
            transmitter in a television remote control conforms to the specification that has the
            identifier 2345/XYZ/001. An instance of the InterfaceDefinitionFor entity data type is
            necessary to identify this relationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute interface to entity-->
               <xsd:element name="Interface" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the specification that defines necessary attributes for the
                        item that participates in the interface. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute interfaceComponent to SELECT-->
               <xsd:element name="InterfaceComponent" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that conforms to the interface specification.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceSpecification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceSpecification is a specialization of Product that provides a
            definition of necessary attributes for one or more items that participate in an
            interface. BSI develops a standard for connecting domestic electrical equipment to the
            electricity supply. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceSpecificationDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceSpecificationDefinition is a specialization of
            ProductViewDefinition that provides a view of an InterfaceSpecification. When developing
            a BSI standard for connecting domestic electrical equipment to the electricity supply,
            collected comments from experts form a new view on a version of the standard.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InterfaceSpecificationVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InterfaceSpecificationVersion is a specialization of ProductVersion
            that identifies a version of an InterfaceSpecification. In 1999, BSI issues a new
            version of a standard for connecting domestic electrical equipment to the electricity
            supply. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="InZone" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An InZone is a relationship between a ZoneElement and an item that
            exists within the zone. A pump is in the starboard engine room of a ship.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute locatedItem to SELECT-->
               <xsd:element name="LocatedItem" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that exists in the zone. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute zone to entity-->
               <xsd:element name="Zone" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the region in which the item exists. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ItemAssumed" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ItemAssumed is an association between an Assumption and the item
            that is being assumed. A facility is assumed to exist at a given location. The facility
            shall be represented by a ResourceItemAssignment, the location by a Location, and the
            existence of the facility at the location, by a LocationAssignment assigning a location
            to the resource. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ItemAssumed.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ItemAssumed This ItemAssumed is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute assumption to entity-->
               <xsd:element name="Assumption" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Assumption. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute item to SELECT-->
               <xsd:element name="Item" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that is assumed to be true. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ItemDesignAssociation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ItemDesignAssociation is the association of a ProductConfiguration
            with a ProductViewDefinition or a ProductVersion. It specifies the design that
            corresponds to the ProductConfiguration. If the design is a ProductViewDefinition, the
            ItemDesignAssociation represents the statement that, in the considered definition
            context, the product version, that is, the ProductViewDefinition is a valid way to
            implement the ProductConfiguration. NOTE: This association might not be valid in all
            definition contexts of the product version. If the design is a ProductVersion, the
            ItemDesignAssociation represents the statement that, in all definition contexts, the
            ProductVersion is a valid way to implement the ProductConfiguration. NOTE: The
            association might not be valid for other versions of the product. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute configuration to entity-->
               <xsd:element name="Configuration" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the ProductConfiguration for which a product solution is
                        designated. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute design to SELECT-->
               <xsd:element name="Design" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ProductVersion or the ProductViewDefinition that
                        identifies a product which is a valid implementation for the
                        ProductConfiguration. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ItemShape" abstract="false">
      <xsd:annotation>
         <xsd:documentation> AnItemShape is a specialization of an ItemShapeObject  that represents
            the shape of a ShapeableItemSelect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ItemShapeObject">
            <xsd:sequence>
               <!--EXPRESS attribute describedElement to SELECT-->
               <xsd:element name="DescribedElement" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the role of the ShapeableItemSelect whose shape
                        is the ItemShape. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ItemShapeObject" abstract="true">
      <xsd:annotation>
         <xsd:documentation> AnItemShapeObject is an abstract generalization of instances that
            represents the shape of a ShapeableItemSelect. NOTE: Only non-abstract specializations
            of the ItemShapeObject can be instantiated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ItemShape </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ItemShape.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ItemShape This ItemShape is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ItemUsageEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ItemUsageEffectivity is an effectivity domain that constrains the use
            of a product with or within another product, in the context of a ProductConfiguration.
            The effectivityDomain attribute identifies a domain of effectivity. The
            itemUsageRelationship attribute identifies a relationship which characterizes the use of
            the product with or within another product. This relationship may be an
            assembly-component relationship or a make-from relationship. The resolvedConfiguration
            attribute identifies an association between a ProductConfiguration and a product that
            implements it. This attribute establishes the context in which the itemUsageRelationship
            is considered and constrained. When the effectivity domain is a range of serial numbers,
            the serial numbers considered are those of the ProductConfiguration. When the
            effectivity domain is defined using a production lot number, the production lot
            considered is one of the ProductConfiguration. When the effectivity domain is an
            interval of time, the interval of time considered is related to the production of the
            ProductConfiguration. NOTE: When no effectivity constraint is applied to a
            ViewDefinitionUsage, the validity or applicability status of this ViewDefinitionUsage is
            unknown. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ItemUsageEffectivity This ItemUsageEffectivity is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute effectivityDomain to entity-->
               <xsd:element name="EffectivityDomain" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Effectivity that defines the domain of effectivity.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute itemUsageRelationship to SELECT-->
               <xsd:element name="ItemUsageRelationship" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ViewDefinitionUsage whose applicability is constrained.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute resolvedConfiguration to entity-->
               <xsd:element name="ResolvedConfiguration" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ItemDesignAssociation that identifies the context where
                        the itemUsageRelationship is considered. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Justification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Justification is the identification and description of the reasons for
            something. Justification entities may be associated with the data to which they apply. A
            justification may be provided for a product design. Similarly, a justification may be
            provided for why an activity is needed or was undertaken. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Justification
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Justification.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Justification This Justification is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute contextDescription to entity-->
               <xsd:element name="ContextDescription" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that provides information about the nature of the
                        context in which the Justification applies. The value of the attribute need
                        not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <xsd:element name="JustificationSupportAssignment"
                  type="JustificationSupportAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded relationships-->
               <xsd:element name="JustificationRelationship" type="JustificationRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="JustificationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A JustificationAssignment is the association between a Justification and
            the item for which the Justification is provided. The item can be an activity or a
            product design. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedJustification to entity-->
               <xsd:element name="AssignedJustification" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Justification that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="JustificationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A JustificationRelationship is an association between two
            Justifications. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the JustificationRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Justification that is part of the
                        relationship. If one element of the relationship is dependent upon the other
                        then this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="JustificationSupportAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A JustificationSupportAssignment is the association between a
            Justification and the item providing evidential support for the Justification The
            support item can be the results from an analysis, a report, or professional judgment.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTo to entity-->
               <!--EXPRESS attribute assignedSupportItem to SELECT-->
               <xsd:element name="AssignedSupportItem" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item which provides evidential support for a
                        Justification. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LifeCycleStage" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A LifeCycleStage represents a point, period, or step in a lifecycle. It
            is referenced by ViewDefinitionContext. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        LifeCycleStage.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute sameAs to SELECT-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="ExternalItem" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ExternalOwlObject" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Location" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Location is a place or position where an activity or event can occur
            or a product or resource can exist. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Location </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Location.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Location This Location is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute alternativeLocationRepresentations to entity-->
               <xsd:element name="AlternativeLocationRepresentations" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocationRepresentation" type="cmn:Reference"
                           minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="LocationRelationship" type="LocationRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LocationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A LocationAssignment is a relationship between a product, event, or
            person and a location. There may be distinct assignment for each qualification. for
            example planned, scheduled or actual. Each assignment may have a start and end date or
            time. A location may have multiple assignments. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedLocation to entity-->
               <xsd:element name="AssignedLocation" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Location that is assigned to activity or product data.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LocationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A LocationRelationship is a relationship between two locations. Location
            B, which is in reference to location A or Location B (UK), which is a refinement of
            Location A (Europe). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Location that is a part of the
                        relationship. If one element of the relationship is dependent upon the other
                        then this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LocationRepresentation" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A LocationRepresentation is a means of representing a location.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the LocationRepresentation
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        LocationRepresentation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this LocationRepresentation This LocationRepresentation is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LoopingElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A LoopingElement is a specialization of TaskElement. It invokes a
            specified number of repetitions of a further TaskElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StructuredTaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute repeatedElement to entity-->
               <xsd:element name="RepeatedElement" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElement to be repeated in the looping element.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="LotEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A LotEffectivity is a specialization of Effectivity for which the domain
            of applicability is defined as a given batch of items. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute lotId to entity-->
               <xsd:element name="LotId" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the identification of the batch of items.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute lotSize to entity-->
               <xsd:element name="LotSize" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the size of the batch of items. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="MakeFromRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A MakeFromRelationship is a specialization of ViewDefinitionUsage
            established between two instances of PartViewDefinition. It specifies that, in the
            context of the definition of the relating part version, the relating part version is
            considered as resulting from the manufacturing transformation of the related part
            version. NOTE: The related part version may identify a raw material or a semi-finished
            part. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionUsage">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ValueWithUnit that specifies the amount of the related
                        part version that is used to produce the relating part version. The value of
                        this attribute need not be specified. The quantity is specified when the
                        related part version is a countable material. If the value is absent , it
                        shall be considered that one occurrence of the related part version is used
                        to produce the relating part version. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute priority to base type-->
               <xsd:element name="Priority" type="xsd:integer" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> an integer that ranks the preference for use of the related
                        part version among all instances of MakeFromRelationship that have the same
                        value for the inherited MakeFromRelationship attribute. This value is an
                        integer that only has meaning when comparing it with corresponding values
                        for MakeFromRelationship sharing the same MakeFromRelationship. It is a
                        relative ranking value, not an absolute ranking. A lower value indicates a
                        higher preference for the MakeFromRelationship, and a higher value indicates
                        a lower preference. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ManagedResource" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ManagedResource is a representation of a resource that is provided
            with resource management capabilities. The role of a managed resource is determined by
            classification. A managed resource can be classified as "Stock line".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ManagedResource
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ManagedResource.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ManagedResource This ManagedResource is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the measure of the amount of the resource that is available
                        at a given location. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute item to SELECT-->
               <xsd:element name="Item" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a reference to an identifiable ResourceItem (within the
                        application context) that (when realized) will satisfy that requirement.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ManagedResourceRelationship" type="ManagedResourceRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ManagedResourceRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ManagedResourceRelationship is an association between two managed
            resources. The meaning of the relationship is determined by classification. A managed
            resource relationship can be classified as "Alternative" or "Preferred".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ManagedResource that is a part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Market" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Market is the identification of a marketing segment for products.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Market </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Market.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Market This Market is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute marketSegmentType to entity-->
               <xsd:element name="MarketSegmentType" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that identifies a marketing category of products.
                        'Luxury automobiles', 'laptop personal computers', and 'budget personal
                        stereos' are examples of market segment types. The value of this attribute
                        need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="MeasureQualification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A MeasureQualification is a means to provide information about
            measurements in which there is an associated uncertainty. The uncertainty may be
            specified as precision, qualitative uncertainty, or expanded uncertainty, and the type
            of the related datum shall be included. The uncertainty is defined in clause 2 of "The
            Guide to the Expression of Uncertainty in Measurement". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        MeasureQualification. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this MeasureQualification This MeasureQualification is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute qualifiers to SELECT-->
               <xsd:element name="Qualifiers" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the ValueQualifierSelect for the
                        MeasureQualification. There shall be one or more ValueQualifierSelect for
                        each qualifiers. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="ExternalTypeQualifier" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PreDefinedTypeQualifier" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PrecisionQualifier" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="UncertaintyQualifier" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="QualitativeUncertainty" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="StandardUncertainty" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ExpandedUncertainty" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Message" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Message is a collection of information, brought together by an
            originator (the message definer) for some particular purpose, generally the fulfillment
            of a process. A Message is an historical record, intended to be sent using an Envelope
            and in consequence, is not versioned. NOTE: The same Message can be sent several times
            using different Envelope. Once it has been sent once, it cannot be further changed.
            However it should not remain unsent, since that is to confuse its functions and
            therefore its meaning with other entities such as one of the types of document.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Message </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Message.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Message This Message is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute contains to SELECT-->
               <xsd:element name="Contains" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the actual contents of the Message or a reference to the
                        contents. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="Activity" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityActual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DirectedActivity" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Scheme" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SchemeEntry" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SchemeVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EndTask" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ExitLoop" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StartTask" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StructuredTaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ConcurrentElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SimultaneousElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DecisionPoint" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="LoopingElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatCount" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatUntil" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatWhile" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementSequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementLevels" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskInvocation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AdvisoryTaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethodVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Approval" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Certification" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Contract" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DigitalFile" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ExternalOwlClass" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Justification" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Location" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ManagedResource" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Observation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Organization" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Person" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Product" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Analysis" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlot" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Collection" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Document" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceConnector" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Part" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Requirement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Risk" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="System" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductConcept" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductConfiguration" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductGroup" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDesign" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DocumentVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDesign" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsPlanned" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequirementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisDisciplineDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="BreakdownElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneElementDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="DocumentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DigitalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RiskViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskPerception" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Project" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequiredResource" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ResourceAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ResourceEvent" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DecreasingResourceEvent" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="IncreasingResourceEvent" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ResourceItem" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SecurityClassification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="State" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="StateObserved" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StatePredicted" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StateDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TypeOfPerson" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Validation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Verification" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="WorkOrder" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="WorkRequest" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definedBy to SELECT-->
               <xsd:element name="DefinedBy" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the identification of who ( Organization or
                        PersonInOrganization) or what defined the message, that is, identified its
                        purpose and contents. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="Organization" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PersonInOrganization" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute exchangeContextClassLibrary to entity-->
               <xsd:element name="ExchangeContextClassLibrary" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExchangeContextClassLibrary that identifies the OWL
                        class library used in the exchange. This OWL class library may reference any
                        other OWL libraries that are required. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="MessageRelationship" type="MessageRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="MessageRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A MessageRelationship is a link between two related messages. The
            meaning of the association depends on MessageRelationship.role. If Message=2 replaces
            Message=1, then MessageRelationship.related points to Message=2 and
            MessageRelationship.relating points to Message=1 with
            MessageRelationship.role="replaces". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Message participating in the
                        relationship. If one Message participating in the relationship is dependent
                        upon the other, this attribute shall be the dependent one.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="NextAssemblyViewUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A NextAssemblyViewUsage is a specialization of AssemblyViewRelationship.
            It establishes a relationship between a component and its immediate parent assembly in a
            product structure. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssemblyViewRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="NumericalContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A NumericalContext is a context in which a NumericalValue is recorded.
            The context may represent the organization, technique or system used to establish the
            NumericalValue. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this NumericalContext. This NumericalContext is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a set of text based descriptions of the NumericalContext.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute accuracy to base type-->
               <xsd:element name="Accuracy" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the accuracy to which the NumericalValues in this context
                        are measured. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute significantDigits to base type-->
               <xsd:element name="SignificantDigits" type="xsd:integer" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the minimum number of decimal digits that
                        ValueWithUnits in this NumericalContext are measured. If present, the
                        numerical measure or range may be specified using more digits than the
                        significant digits but shall not be specified using less digits. The value
                        of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="NumericalValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A NumericalValue is a specialization of a ValueWithUnit representing a
            quantity expressed with a numerical value and a unit. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ValueWithUnit">
            <xsd:sequence>
               <!--EXPRESS attribute valueComponent to base type-->
               <xsd:element name="ValueComponent" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the quantity of the NumericalValue. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute valueContext to entity-->
               <xsd:element name="ValueContext" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the context in which the NumericalValue is
                        recorded.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Observation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Observation is an historical record of something that has occurred
            during the life of a product or its support environment. Its use is restricted to
            observations not directly represented in the data model, and should not be used where
            some other reporting data structure is defined. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Observation
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Observation.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Observation This Observation is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute inContext to SELECT-->
               <xsd:element name="InContext" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the context in which the observation is made. A problem is
                        found during a maintenance operation. The set of contexts can include the
                        equipment being maintained, the end product the equipment is fitted to, the
                        activity being undertaken, the manual that describes the activity and the
                        resources being used. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="Activity" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityActual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DirectedActivity" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ActivityMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Scheme" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SchemeEntry" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SchemeVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EndTask" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ExitLoop" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StartTask" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="StructuredTaskElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ConcurrentElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SimultaneousElements" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DecisionPoint" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="LoopingElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatCount" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatUntil" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RepeatWhile" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementSequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskElementLevels" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskInvocation" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AdvisoryTaskStep" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethod" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="TaskMethodVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisAssignment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorOccurrence" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Product" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="Analysis" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlot" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Collection" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Document" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceConnector" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironment" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Part" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Requirement" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Risk" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="System" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductGroup" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDesign" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemBreakdownVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdownVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DocumentVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsPlanned" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorAsRealized" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDesign" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsPlanned" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequirementVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="AnalysisDisciplineDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AttachmentSlotDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="BreakdownElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="FunctionalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="SystemElementDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ZoneElementDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="CollectionViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="DocumentDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="DigitalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalDocumentDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="EnvironmentDefinitionView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceConnectorDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="InterfaceSpecificationDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualView" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementViewDefinition" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RiskViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskPerception" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemViewDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequiredResource" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ResourceAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ResourceItem" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ViewDefinitionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="AssemblyViewRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ComponentUpperLevelIdentification" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="NextAssemblyViewUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PromissoryAssemblyViewUsage" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="CausalConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="EnvironmentViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ObservedEnvironmentViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RelatedConsequence" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RequirementViewDefinitionRelationship"
                           type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="RequirementCollectionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="TracingRelationship" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="RiskPerceptionRelationship" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ViewDefinitionUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="BreakdownElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalElementUsage" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PhysicalElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneElementUsage" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="MakeFromRelationship" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductInAttachmentSlot" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="WorkOrder" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="WorkOutput" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="WorkRequest" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute observedBy to entity-->
               <xsd:element name="ObservedBy" type="cmn:Reference" minOccurs="0"
                  maxOccurs="unbounded">
                  <xsd:annotation>
                     <xsd:documentation> the person or equipment that did the observing. By default
                        this is a piece of physical equipment, represented by ProductAsRealized.
                        NOTE: One use of Observation is to provide a link between health monitoring
                        equipment and the file it produces (recorded as a Document).
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute observedDuring to entity-->
               <xsd:element name="ObservedDuring" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ActivityActual that was being performed when the
                        observation was made. The value of this attribute need not be specified. An
                        unexpected problem may be found during a maintenance activity, in which case
                        the ActivityActual is the maintenance activity itself. Aircraft health
                        monitoring data is collected during a flight. The flight profile may be
                        recorded using the ActivityActual. NOTE: Some business rules may require
                        that an observation is always made against an ActivityActual, while others
                        may not require that the activity be recorded. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ObservationRelationship" type="ObservationRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ObservationAssignment is an association of an Observation with any
            item that an observation can be made about, or any item that can be used as part of the
            observation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedObservation to entity-->
               <xsd:element name="AssignedObservation" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Observation that applies to or is relevant to the
                        assigned item. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservationConsequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ObservationConsequence is an association of an observation to the
            consequences that follow from it, where those consequences are in the form of a
            WorkRequest. NOTE: One of the uses of ObservationConsequence is to close one of the
            feedback loops from the use of a product to requests for its enhancements.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ObservationConsequence
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute inferredFrom to entity-->
               <xsd:element name="InferredFrom" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Observation that leads to the consequence.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute requests to SELECT-->
               <xsd:element name="Requests" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the WorkRequest that the consequence entails.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ObservationRelationship is a relationship between two observations.
            The nature of this relationship is identified by the role. Where there is a structural
            relationship between Observation, the semantics of the structure are identified by the
            classification of the ObservationRelationship against reference-data. The Observation of
            a persistent fault is composed of a series of Observation of occurrences of the same
            fault. That is, ObservationRelationship.related points to the composite Observation,
            while ObservationRelationship.relating points to one actual Observation of the
            occurrence. The ObservationRelationship.role of the relationship is "observed instance",
            while it is classified as "is composed of". In this example, the component Observation
            will apply to ProductAsRealized and the consequence will be to rectify the individual
            faults, while the composite Observation will apply to a ProductVersion and the
            consequence will be a design change. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Observation that is a part of the
                        relationship. If one element of the relationship is dependent upon the other
                        then this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironment is a specialization of Product that represents a
            record of observations about the environment in which a product is or has been
            operating. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentAssignment is an assignment of a product to the
            environment in which is or has operated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedEnvironment to entity-->
               <xsd:element name="AssignedEnvironment" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a record of the environment, ObservedEnvironmentView, in
                        which the product is supported or operates. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentToDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentToDefinition is a relationship between a record of
            a set of observations about an environment, represented by an ObservedEnvironment, and a
            typical environment, represented by an EnvironmentDefinition. The typical environment is
            the expected environment about which observations have been made. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute definedEnvironment to entity-->
               <xsd:element name="DefinedEnvironment" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the typical environment about which the recorded
                        observations have been made. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute observedEnvironment to entity-->
               <xsd:element name="ObservedEnvironment" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the record of observations about an environment.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentToDefinitionVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentToDefinitionVersion is a relationship between a
            version of the record of a set of observations about an environment, represented by an
            ObservedEnvironmentVersion, and a version of the typical environment, represented by
            EnvironmentDefinitionVersion. The typical environment is the expected environment about
            which observations have been made. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute definedEnvironmentVersion to entity-->
               <xsd:element name="DefinedEnvironmentVersion" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the typical environment about which the
                        recorded observations have been made. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute observedEnvironmentVersion to entity-->
               <xsd:element name="ObservedEnvironmentVersion" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the record of observations about an
                        environment. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentToDefinitionView" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentToDefinitionView is a relationship between a view
            of the record of a set of observations about an environment, represented by an
            ObservedEnvironmentView, and a view of the typical environment, represented by
            EnvironmentDefinitionView. The typical environment is the expected environment about
            which observations have been made. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute definedEnvironmentView to entity-->
               <xsd:element name="DefinedEnvironmentView" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the view of the typical environment about which the
                        recorded observations have been made. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute observedEnvironmentView to entity-->
               <xsd:element name="ObservedEnvironmentView" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the view of the record of observations about an
                        environment. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentVersion is a specialization of ProductVersion that
            identifies a particular version of an ObservedEnvironment. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentView" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentView is a specialization of ProductViewDefinition
            that provides a view of a version of an observed environment relevant for one or more
            application domains. This view collects the characteristics of the observations on the
            environment. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ObservedEnvironmentViewDefinitionRelationship"
                  type="ObservedEnvironmentViewDefinitionRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ObservedEnvironmentViewDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An ObservedEnvironmentViewDefinitionRelationship is a specialization of
            ViewDefinitionRelationship that represents an association between two
            ObservedEnvironmentView instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Organization" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An Organization is an administrative structure in which persons are
            active. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Organization
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Organization.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Organization This Organization is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AddressAssignment" type="AddressAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="QualificationAssignment" type="QualificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="OrganizationOrganizationTypeRelationship"
                  type="OrganizationOrganizationTypeRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationRelationship" type="OrganizationRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationalLocationIdentification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationalLocationIdentification is location that is defined by
            an identification which is specific in an organization context. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the
                        OrganizationalLocationIdentification </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        OrganizationalLocationIdentification. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this OrganizationalLocationIdentification This
                        OrganizationalLocationIdentification is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute identificationType to base type-->
               <xsd:element name="IdentificationType" type="xsd:string" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that characterizes the identification location.
                        compartment or building. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute locationValue to base type-->
               <xsd:element name="LocationValue" type="xsd:string" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value of organization based location identification.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationBasedLocationRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationBasedLocationRepresentation is a specialization of
            LocationRepresentation that specifies a location in the context of an organization. The
            location "Room 99" in "The Administration Building" of a particular university might be
            represented using one instance of OrganizationBasedLocationRepresentation with two
            instances of OrganizationalLocationIdentification and one instance of Organization.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LocationRepresentation">
            <xsd:sequence>
               <!--EXPRESS attribute locationIdentifications to entity-->
               <xsd:element name="LocationIdentifications" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="OrganizationalLocationIdentification"
                           type="cmn:Reference" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute organizationForLocation to entity-->
               <xsd:element name="OrganizationForLocation" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the organization in which the location identifier is
                        meaningful. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationOrganizationTypeRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationOrganizationTypeRelationship is a relationship between an
            Organization organization and an OrganizationType. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute organization to entity-->
               <!--EXPRESS attribute organizationType to entity-->
               <xsd:element name="OrganizationType" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the OrganizationType. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationOrPersonInOrganizationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationOrPersonInOrganizationAssignment is an association of an
            organization or a person in an organization with activity or product data.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedEntity to SELECT-->
               <xsd:element name="AssignedEntity" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the organization or person in organization that is to be
                        associated with the activity or product data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionGroupAssignment" type="PositionGroupAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionTypeAssignment" type="PositionTypeAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationRelationship is a relationship between two instances of
            Organization. A team belongs to a department which itself belongs to a company. Such an
            organizational structure can be described up using instances of
            OrganizationRelationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Organization that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrganizationType" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrganizationType is a recognized kind of Organization. legal entity
            change control board sales organization manufacturing organization department
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the OrganizationType
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the OrganizationType.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="OrStateCauseEffectDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An OrStateCauseEffectDefinition is a specialization of
            StateCauseEffectDefinition. It relates one or more StateDefinition entities that are
            causes to a StateDefinition that is the effect. At least one cause must exist prior to
            the effect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateCauseEffectDefinition">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ParameterizedDistribution" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ParameterizedDistribution is a specialization of
            ProbabilityDistribution that is used to link a named probability distribution to the
            parameters that define it. NOTE: The ParameterizedDistribution of this entity is used to
            discriminate between alternative parameterizations of the same distribution. NOTE: To
            calculate a value using a ParameterizedDistribution it is necessary to know the general
            distribution function, the value of the distribution function parameters, and the
            specific random variable value for which the probability evaluation is required. The
            Probability Distribution module does not define the formula for the distribution
            function, and it is assumed that this is defined externally, either through reference
            information or via a "formula" module. This entity provides the distribution function
            parameters. The value of the random variable for which the probability is calculated is
            provided by the ProbabilityDerivationParameter. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProbabilityDistribution">
            <xsd:sequence>
               <!--EXPRESS attribute hasParameters to entity-->
               <xsd:element name="HasParameters" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the list of parameters used in the parameterization. NOTE:
                        In many distributions there is a trivial relationship between the mean and
                        variance for the distribution. In such a case it is not necessary to list
                        the parameters. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProbabilityDistributionParameter"
                           type="ProbabilityDistributionParameter" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute parameterizationName to entity-->
               <xsd:element name="ParameterizationName" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of the parameterization, distinguishing it from
                        other parameterizations. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Part" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A Part is a specialization of Product that collects the definitional
            information of the versions of either a part or of a non-countable material. NOTE: A
            Part does not represent an actual physical object that is or was existing in the real
            world. NOTE: A complex instance of the Part entity and of the Document entity may be
            created in order to represent a document that is a component of a manufactured product,
            for example a user manual of a car. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AlternatePartRelationship" type="AlternatePartRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PartialDocumentAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PartialDocumentAssignment is a specialization of DocumentAssignment. A
            PartialDocumentAssignment identifies a specific portion of the contents of a document.
            It assigns this portion to the product data for which it is relevant.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DocumentAssignment">
            <xsd:sequence>
               <!--EXPRESS attribute documentPortion to entity-->
               <xsd:element name="DocumentPortion" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the word or group of the words that convey the subject or
                        sub contents of the Document. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PartVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PartVersion is a specialization of ProductVersion that identifies a
            version of a part. A PartVersion serves as the collector of the data characterizing a
            realizable object in various application contexts. NOTE: A PartVersion is expected to be
            functionally and physically interchangeable with the other versions of the same Part.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PartViewDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PartViewDefinition is a specialization of ProductViewDefinition that
            defines a characterization view of a version of a Part. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="MakeFromRelationship" type="MakeFromRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Person" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Person is an individual human being. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Person </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Person.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Person This Person is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute lastName to base type-->
               <xsd:element name="LastName" type="xsd:string" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Person's name. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute firstName to base type-->
               <xsd:element name="FirstName" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the first element of the Person's list of forenames. The
                        value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute middleNames to base type-->
               <xsd:element name="MiddleNames" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Person's other forenames. The value of this attribute
                        need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="STRING" type="xsd:string" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute prefixTitles to base type-->
               <xsd:element name="PrefixTitles" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that specifies the Person's social or professional
                        standing and appear before his or her names. The value of this attribute
                        need not be specified. "Mr.", "Ms", "Dr." and combinations are examples of
                        prefixTitles. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="STRING" type="xsd:string" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute suffixTitles to base type-->
               <xsd:element name="SuffixTitles" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that specifies the Person's social or professional
                        standing and appear after his or her names. The value of this attribute need
                        not be specified. "Ph.D." and "Esquire" are examples of suffixTitles.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="STRING" type="xsd:string" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="AddressAssignment" type="AddressAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="QualificationAssignment" type="QualificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PersonInOrganization" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PersonInOrganization is the identification of a Person and of his role
            in an Organization </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the PersonInOrganization
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        PersonInOrganization. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this PersonInOrganization. This PersonInOrganization is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute concernedPerson to entity-->
               <xsd:element name="ConcernedPerson" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Person who is related with an Organization.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute containingOrganization to entity-->
               <xsd:element name="ContainingOrganization" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Organization to which a Person is related.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AddressAssignment" type="AddressAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="QualificationAssignment" type="QualificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PersonOrOrganizationOrPersonInOrganizationInPosition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PersonOrOrganizationOrPersonInOrganizationInPosition is a Person,
            Organization, or PersonInOrganization that holds a Position. A person may hold more than
            one position within an organization or organizations. A person can hold two positions in
            an organization: Production Manager and Safety Officer. A position in an organization
            can be held by more than one person or organization. Two people can hold the same
            position in a job-share scheme. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the
                        PersonOrOrganizationOrPersonInOrganizationInPosition </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        PersonOrOrganizationOrPersonInOrganizationInPosition. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this PersonOrOrganizationOrPersonInOrganizationInPosition
                        This PersonOrOrganizationOrPersonInOrganizationInPosition is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute personOrOrganization to SELECT-->
               <xsd:element name="PersonOrOrganization" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Person or Organization who holds the Position.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute position to entity-->
               <xsd:element name="Position" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Position that is held by the Person or Organization.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="PersonOrOrganizationOrPersonInOrganizationInPositionRelationship"
                  type="PersonOrOrganizationOrPersonInOrganizationInPositionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PersonOrOrganizationOrPersonInOrganizationInPositionRelationship"
      abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PersonOrOrganizationOrPersonInOrganizationInPositionRelationship is a
            specialization of an RelationshipObject that is a relationship between one Organization,
            Person, or PersonInOrganization and another. Examples of the relationship are: successor
            job-share NOTE: The meaning of the relationship is determined by classification which is
            identified by the RelationshipObject property. The possible classifications are
            subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the
                        PersonOrOrganizationOrPersonInOrganizationInPositionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the other instance of Organization, Person, or
                        PersonInOrganization that participates in the relationship. If one element
                        of the relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalBreakdown" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalBreakdown is a specialization of Breakdown that identifies a
            partitioning of a product into a set of related physical elements so as to form
            explicit, parent-child views that comprise the product elements. The parent-child view
            is represented by PhysicalElementUsage instances relating the physical elements in the
            breakdown which are represented by PhysicalElements. A physical breakdown might provide
            a decomposition of an automobile in terms such as body, roof, bonnet, bumpers and this
            breakdown might be different from, and orthogonal to, a parts decomposition.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Breakdown">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalBreakdownContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalBreakdownContext is a specialization of BreakdownContext that
            is a membership relationship between a PhysicalElement and a PhysicalBreakdown of which
            the physical element is a member. A wheel is a member of the physical breakdown of an
            automobile. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownContext">
            <xsd:sequence><!--EXPRESS attribute breakdown to entity--><!--EXPRESS attribute breakdownElement to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalBreakdownVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalBreakdownVersion is a specialization of BreakdownVersion that
            identifies a version of a PhysicalBreakdown An engineer modifies the current physical
            breakdown for an aircraft on the basis of a tail re-design. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalDocumentDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalDocumentDefinition is a specialization of DocumentDefinition.
            A physical document definition may consist of one or many component hardcopy files.
            Paper plots of technical drawings, micro fiche, or paper documents such as calculations
            or test reports are examples of PhysicalDocumentDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="DocumentDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute components to entity-->
               <xsd:element name="Components" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Hardcopy" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalElement is a specialization of BreakdownElement that
            identifies the elements in one or more PhysicalBreakdown instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElement">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalElementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalElementDefinition is a specialization of
            BreakdownElementDefinition that identifies a view of a version ( PhysicalElementVersion)
            of a PhysicalElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="PhysicalElementUsage" type="PhysicalElementUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalElementUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalElementUsage is a specialization of BreakdownElementUsage that
            is a relationship between a parent and child PhysicalElement. In a physical breakdown,
            the aircraft (parent) might include (as children) a fuselage, wings, tail and
            undercarriage. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementUsage">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PhysicalElementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PhysicalElementVersion is a specialization of BreakdownElementVersion
            that identifies a version of a PhysicalElement An engineer changes the details
            describing the undercarriage that is an element in a physical breakdown of an aircraft.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Position" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Position is a function or job performed by a person. It defines
            responsibilities and activities. A position that is not fulfilled by a person is a
            vacancy. Company Director Service Engineer </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Position </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Position.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Position This Position is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute address to entity-->
               <xsd:element name="Address" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Address of the position. The value of the attribute
                        need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute positionContext to SELECT-->
               <xsd:element name="PositionContext" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the organization, project or group that uses this position.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <xsd:element name="PositionPositionTypeAssignment"
                  type="PositionPositionTypeAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded relationships-->
               <xsd:element name="PositionRelationship" type="PositionRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionAssignment is an association of a Position with activity or
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedPosition to entity-->
               <xsd:element name="AssignedPosition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Position that is assigned to activity or product data.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionGroup" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionGroup is a group for collecting people in their positions to
            cooperate in an assignment. People representing utility companies who cooperate with
            each other to coordinate road works. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the PositionGroup
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the PositionGroup.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this PositionGroup This PositionGroup is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute address to entity-->
               <xsd:element name="Address" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Address of the PositionGroup. The value of the
                        attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute groupContext to SELECT-->
               <xsd:element name="GroupContext" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the organization or project that uses this PositionGroup.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="PositionGroupRelationship" type="PositionGroupRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionGroupAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionGroupAssignment is an association of a PositionGroup with
            activity or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedPositionGroup to entity-->
               <xsd:element name="AssignedPositionGroup" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PositionGroup that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionGroupRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionGroupRelationship is a relationship that specifies the
            participation of a position in a group. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute group to entity-->
               <!--EXPRESS attribute position to entity-->
               <xsd:element name="Position" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the job or function that belongs to the group.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionPositionTypeAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionPositionTypeAssignment is an assignment of PositionType to a
            Position. It allows many positions to be described by many position types.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedPositionType to entity-->
               <xsd:element name="AssignedPositionType" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PositionType which is assigned to a Position.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to entity-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PositionRelationship is a specialization of an RelationshipObject
            that is a relationship between two instances of Position. Examples of relationships
            between Positions are: Superior / Subordinate Superceded by NOTE: The meaning of the
            relationship is determined by classification which is identified by the
            RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the other instance of Position that participates in the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionType" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionType is a recognized kind of position. Chief Executive Officer
            Manager Service engineer Programmer Aircraft engineering technician propulsion
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the PositionType
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the PositionType.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definedBy to entity-->
               <xsd:element name="DefinedBy" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TypeOfPerson that serves as a defining example for the
                        PositionType. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonAssignment" type="TypeOfPersonAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PositionTypeAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PositionTypeAssignment is the association of a PositionType with
            activity or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedPositionType to entity-->
               <xsd:element name="AssignedPositionType" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PositionType that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PrecisionQualifier" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PrecisionQualifier is a specification of the number of significant
            digits in the representation of a value. PrecisionQualifier shall be interpreted in
            accordance with PrecisionQualifier in part 45 of this standard. NOTE: The precision is
            defined in clause 2 of "The Guide to the Expression of Uncertainty in Measurement".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute significantDigits to base type-->
               <xsd:element name="SignificantDigits" type="xsd:integer" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the number of significant digits of the value.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PreDefinedTypeQualifier" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PreDefinedTypeQualifier is a type of TypeQualifierSelect whose
            PreDefinedTypeQualifier has predefined values: 'minimum': the value is a minimum value;
            'maximum': the value is a maximum value; 'nominal': the value is a nominal value;
            'specified': the value has been specified; 'typical': the value is typical;
            'calculated': the value has been calculated; 'designed': the value represents a value
            intended by the design; 'estimated': the value has been estimated; 'measured': the value
            has been measured; 'required': the value represents a requirement; 'set point': the
            value is used as an initialization value; 'basic': the value is a basic value; 'lower
            deviation': the value is maximum deviation in the negative direction from the nominal or
            basic value; 'upper deviation': the value is maximum deviation in the positive direction
            from the nominal or basic value. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute name to base type-->
               <xsd:element name="Name" type="xsd:string" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the words by which the PreDefinedTypeQualifier is known.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Probability" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A Probability is a specialization of PropertyValue that is a probability
            value (see definition 3.5.1 above). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityByName" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityByName is a specialization of Probability whose value
            belongs to a one of a set of named classes, rather than by assigning a specific
            numerical value, which may not be available. A safety assessment methodology classes the
            probability an accident as "very unlikely", "unlikely", "significantly likely" and
            "almost certain". Any process that has a "very likely" or "almost certain" chance of
            causing serious injury is shut down. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Probability">
            <xsd:sequence>
               <!--EXPRESS attribute probabilityValue to entity-->
               <xsd:element name="ProbabilityValue" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the named probability value</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityDerivationParameter" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityDerivationParameter is a specialization of NumericalValue
            that is used by a ProbabilityDerived in a particular role in order to calculate the
            particular probability. In a coin tossing trial, the probability calculated is that of
            getting more than 6 heads in ten tosses. The parameter with the role "minimum number of
            heads" will have the value "6" NOTE: The value attribute, which holds the parameter
            value, is inherited from the parent generalization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityDerived" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProbabilityDerived is a specialization of ProbabilityNumeric that
            associates a particular value of ProbabilityNumeric with the source from which the value
            derived together with any parameters used to get the particular value. NOTE: Where the
            probability derived from a probability distribution, the parameters of
            ProbabilityDerived are those needed to get a single value from the distribution, and not
            those which characterise the distribution. For example, in the case of coin tossing, the
            distribution is a Binomial distribution, with parameters of 'probability for a single
            toss', and 'number of tosses', whereas the parameter for the ProbabilityDerived will be
            the 'number of heads obtained'. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProbabilityNumeric">
            <xsd:sequence>
               <!--EXPRESS attribute derivesFrom to entity-->
               <xsd:element name="DerivesFrom" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the source from which the value derives. NOTE: The possible
                        sources for values include a probability distribution, a statistic or a
                        reference document. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProbabilityGenerator" type="ProbabilityGenerator"
                           minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute hasParameter to entity-->
               <xsd:element name="HasParameter" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the list of parameters which are applied to a
                        ProbabilityDistribution to get the actual ProbabilityByName
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProbabilityDerivationParameter"
                           type="ProbabilityDerivationParameter" minOccurs="1" maxOccurs="unbounded"
                        />
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityDistribution" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityDistribution is a specialization of ProbabilityGenerator
            that is a probability distribution. NOTE: For a full understanding of probability
            distribution and the terms used, a textbook on probability theory should be consulted.
            NOTE: This entity describes a particular probability distribution, rather than the
            general type of distribution. For example, in coin tossing experiment, the number of
            heads that may occur is given by a binomial distribution - that is, a type of
            distribution, and outside the scope of this module. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProbabilityGenerator">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProbabilityDistribution
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute distributionName to base type-->
               <xsd:element name="DistributionName" type="xsd:string" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of the type of distribution. The value of the
                        attribute need not be specified. NOTE: The name is taken from
                        reference-data, which is based on the standard mathematical names for
                        distributions, such as "Binomial", "Normal", "Gaussian". Empirically derived
                        distributions will not normally be named. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute isContinuous to entity-->
               <xsd:element name="IsContinuous" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that distinguishes whether the domain of the
                        probability distribution is discrete or continuous. The measurement of a
                        person's height is a continuous distribution, since it can take any value
                        between 0 and 3m. Coin tossing gives rise to a discrete distribution, since
                        the number of heads cannot be a fraction. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute mean to base type-->
               <xsd:element name="Mean" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the expectation E(x), which is the "summation" of x.p(x)
                        over all x, where x is the random variable, and p(x) is the probability of
                        its occurrence. The term "summation" covers both literal summation in the
                        case of a discrete distribution, and integration for a continuous
                        distribution. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute variance to base type-->
               <xsd:element name="Variance" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the real number indicating the square of the standard
                        deviation of the probability distribution. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityDistributionParameter" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityDistributionParameter is a specialization of
            NumericalValue that is one of the set of values that characterises a probability
            distribution. The Normal (or Gaussian) distribution has, in the standard
            parameterisation, two parameters: the mean and the variance NOTE: For many common
            distributions, the mean and the variance are sufficient to characterize a distribution,
            and the parameter list may be empty. NOTE: ProbabilityDistributionParameter inherits the
            'name' attribute from its parent generalization, and this is used to identify the name
            of the parameter within the particular parameterization. The value attribute is also
            inherited. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityFunctionValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityFunctionValue is a specialization of NumericalValue that
            is the value of the probability function at the given random variable value. NOTE: The
            value is an inherited attribute. It is not in general a probability value. In some
            functions for continuous distributions, the probability that the random variable lies
            between two values is the integral of the function of that range. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityGenerator" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityGenerator is a specialization of PropertyValue. It is a
            source from the ProbabilityDerived is derived. The ProbabilityDerivationParameters are
            applied to the ProbabilityGenerator to get the particular derived value. NOTE: A
            ProbabilityGenerator will generally be either a ProbabilityDistribution or a function of
            some statistics. A probability of "0.67" is derived from a Normal (or Gaussian)
            distribution using the parameter "plus or minus '1.0' standard deviations from the mean"
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityNamedValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityNamedValue is used to hold the name of the probability
            value. NOTE: The value attribute is the description inherited from the parent
            generalization. In general, this value will be one of an enumeration of possible values
            defined through reference-data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a text based descriptions of the Product.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProbabilityNamedValue This ProbabilityNamedValue is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute namedValues to entity-->
               <xsd:element name="NamedValues" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of the probability value. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityNumeric" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProbabilityNumeric is a specialization of Probability that is
            expressed as a numeric value between 0 and 1. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Probability">
            <xsd:sequence>
               <!--EXPRESS attribute probabilityValue to entity-->
               <xsd:element name="ProbabilityValue" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value of the probability </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProbabilityNumericValue" type="ProbabilityNumericValue"
                           minOccurs="1" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProbabilityNumericValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProbabilityNumericValue is a specialization of NumericalValue
            providing a numeric representation of a probability. NOTE: The value attribute is
            inherited from the parent generalization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Product" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A Product is the identification of a product or of a type of product.
            It is a collector of data common to all revisions of the Product. NOTE: Products that
            this entity data type can represent, include: products existing in the real world;
            products that may come into existence as a consequence of some realization process. This
            includes parts and documents; products that are functions. The SS Titanic is a product
            that could be represented by the entity data type Product. Lifeboat is a class of
            products that could be represented by the entity data type Product. Each lifeboat on the
            SS Titanic is a member of this class. NOTE: A product is identified by an organization
            or a person in an organization. NOTE: A product may have zero or more versions. A
            version of a product is represented with an instance of the entity ProductVersion or of
            one of its specializations. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Product </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Product.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Product This Product is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute versions to entity-->
               <xsd:element name="Versions" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the versions of the Product. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProductVersion" type="ProductVersion" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionGroupAssignment" type="PositionGroupAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionTypeAssignment" type="PositionTypeAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AlternateProductRelationship" type="AlternateProductRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ProductRelationship" type="ProductRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsIndividual" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProductAsIndividual is a specialization of Product that identifies an
            individual artefact that has been made or is planned to be made. It is a collector of
            data common to all revisions of the ProductAsIndividual. NOTE: Revisions (
            ProductAsIndividualVersion) of ProductAsIndividual are used to represent whether an
            individual artefact has yet to be made or has been made. The ProductAsIndividualVersion
            specialization ProductAsPlanned is used to represent the revision of an individual
            artefact that has yet to be made and the specialization ProductAsRealized is used to
            represent the revision of an individual artefact that has been made. NOTE: Where
            physical products are being represented, the ProductAsIndividual represents the physical
            or planned physical realization of a product. NOTE: It is likely, but not essential,
            that the artefact, was or will be made from a product design. The product design will be
            represented by a Product which will be related to the ProductAsIndividual by
            ProductDesignToIndividual. NOTE: Many physical products may be produced from a given
            design. A single Product may lead to many ProductAsIndividuals. The design of a personal
            computer is represented by a Product. The personal computer with a serial number on a
            persons desk is represented by a ProductAsIndividual and an associated revision
            represented by ProductAsRealized. The personal computer that has been ordered, allocated
            a serial number for manufacturing planning, but not yet manufactured, is represented by
            a ProductAsIndividual and an associated revision represented by ProductAsPlanned. HMS
            Daring is the first of a new class of ships known as Type 45 Destroyers. It is due to
            enter service in two years time. The Type 45 ship design that applies to HMS Daring is
            represented by a Product; The ship HMS Daring is represented by a ProductAsIndividual.
            This identifies the planned ship, and when built, the actual ship; The planned revision
            of the future ship HMS Daring is represented by a ProductAsPlanned which is related back
            to the ProductAsIndividual; When built, the first revision the actual ship, HMS Daring
            will be represented by a ProductAsRealized which is related back to the
            ProductAsIndividual. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsIndividualEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductAsIndividualEffectivity is a specialization of Effectivity for
            which the domain of applicability is defined as a set of instances of
            ProductAsIndividual. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute items to entity-->
               <xsd:element name="Items" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProductAsIndividual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsIndividualVersion" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A ProductAsIndividualVersion is a specialization of ProductVersion. It
            is a revision of a ProductAsIndividual and acts as a collector of the definitions of
            this revision. The car on my drive is represented by a ProductAsIndividual. The current
            configuration status of the car can be represented by a ProductAsRealized related to the
            ProductAsIndividual. If a safety modification is made to the car resulting in a new
            configuration status of the car, then this may be represented by a new
            ProductAsRealized. HMS Daring is the first of a new class of ships known as Type 45
            Destroyers. It is due to enter service in two years time. The version of the generic
            Type 45 ship design that applies to HMS Daring is represented by a ProductVersion; The
            ship HMS Daring is represented by a ProductAsIndividual. This identifies the planned
            ship, and when built, the actual ship; The planned revision of the future ship HMS
            Daring is represented by a ProductAsPlanned related back to the ProductAsIndividual;
            When built, the first revision the actual ship, HMS Daring will be represented by a
            ProductAsRealized related back to the ProductAsIndividual. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsIndividualView" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProductAsIndividualView is a specialization of ProductViewDefinition
            that defines a characterization view of a version of a ProductAsIndividual. NOTE: The
            ProductAsIndividualView entity type supports the representation of different views of a
            ProductAsIndividual for different purposes. Multiple views of the same
            ProductAsIndividual are represented by different instances of ProductAsIndividualView
            for the same ProductAsIndividualVersion. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsPlanned" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductAsPlanned is a specialization of ProductAsIndividualVersion
            that identifies a revision of an individual artefact that has yet to be made. NOTE: It
            may be planned to make the artefact from of a version of a product design (
            ProductVersion). If this is the case, then the relationship between the artefact (
            ProductAsPlanned) and the design ( ProductVersion) is represented by
            ProductDesignVersionToIndividual. NOTE: If the planned artefact ( ProductAsPlanned) is
            subsequently made into an actual artefact ( ProductAsRealized) then they are related by
            the ProductPlannedToRealized relationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductAsIndividualVersion">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductAsRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductAsRealized is a specialization of ProductAsIndividualVersion
            that identifies a revision of an individual artefact that has been made. A product whose
            properties can only be known by observation or by derivation from observations. NOTE:
            Where physical products are being represented, the ProductAsRealized represents the
            physical product - something one can touch. NOTE: The artefact may have been made from a
            version of a product design ( ProductVersion). If this is the case, then the
            relationship between the artefact ( ProductAsRealized) and the design ( ProductVersion)
            is represented by ProductDesignVersionToIndividual. NOTE: The artefact may have been
            planned and represented by ProductAsPlanned. In which case, the actual artefact (
            ProductAsRealized) is related to the planned artefact ( ProductAsPlanned) by the
            ProductPlannedToRealized relationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductAsIndividualVersion">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductBasedLocationIdentification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductBasedLocationIdentification is a specialization of
            LocationRepresentation that specifies a location in the context of a product. Seat
            number M in the Aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LocationRepresentation">
            <xsd:sequence>
               <!--EXPRESS attribute locationIdentification to entity-->
               <xsd:element name="LocationIdentification" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the letters, numbers, or text, or combinations of letters,
                        numbers, and text, that identify a location in the context of a product.
                        NOTE: Such identification can be expressed in functional or physical terms.
                        "1B" - where this is a seat number in an aircraft. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute locationName to entity-->
               <xsd:element name="LocationName" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text by which a location in the context of a product is
                        known. The value of this attribute need not be specified. "The co-pilot's
                        seat." </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute referencedProduct to SELECT-->
               <xsd:element name="ReferencedProduct" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product that provides the context for the location
                        specification. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductConcept" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductConcept is the identification of a set of similar products that
            were, are or will be proposed to customers. NOTE: The definition of product concepts is
            driven by market and customer requirements and forecasting. A ProductConcept often
            corresponds to the highest level item(s) manufactured by an organization for customers.
            In an organization which manufactures cars and engines for cars, the car models will be
            represented by instances of ProductConcept. NOTE: The entity data type ProductConcept
            enables to represent customer-oriented identification of products that are to be
            delivered to customers, while the entity data type Product enables to identify and to
            track the history of items that are designed and manufactured, as a tangible solution,
            or component of the solution, for a product concept. NOTE: A product concept may be
            characterized by a set of product features identified by the customers or derived from
            customers' needs. NOTE: Depending on the kind of industry and products, a product
            concept might be offered to the customers in one or many different configurations.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductConcept
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ProductConcept.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProductConcept This ProductConcept is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute targetMarket to entity-->
               <xsd:element name="TargetMarket" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Market for which the ProductConcept is intended. The
                        value of the attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductConfiguration" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductConfiguration is the identification of a ProductConcept as a
            configuration. NOTE: The entity ProductConfiguration corresponds to the concept of
            configuration item defined, in some configuration management standards, as an item
            subject to configuration management. A ProductConfiguration may represent a component of
            a contracted product, onto which severe safety rules apply and for which configuration
            management is therefore rigorously applied. NOTE: A ProductConfiguration may identify a
            variation of a ProductConcept, an entire ProductConcept, or some portion thereof. NOTE:
            A ProductConfiguration can be established prior to the existence of a corresponding
            product. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductConfiguration
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ProductConfiguration. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProductConfiguration This ProductConfiguration is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute itemContext to entity-->
               <xsd:element name="ItemContext" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the ProductConcept that defines the context in which the
                        configuration item has been defined. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ProductConfigurationHierarchicalRelationship"
                  type="ProductConfigurationHierarchicalRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProductConfigurationRelationship"
                  type="ProductConfigurationRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ProductConfigurationRevisionSequence"
                  type="ProductConfigurationRevisionSequence" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductConfigurationHierarchicalRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductConfigurationHierarchicalRelationship is a specialization of
            ProductConfigurationRelationship that is used to represent a hierarchical relationship
            between a parent ProductConfiguration and a child ProductConfiguration.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductConfigurationRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductConfigurationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductConfigurationRelationship is a relationship between a pair of
            ProductConfigurations. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ProductConfiguration that is a part
                        of the relationship. If one element of the relationship is dependent upon
                        the other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductConfigurationRevisionSequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductConfigurationRevisionSequence is a specialization of
            ProductConfigurationRelationship that is used to relate a previous version (predecessor)
            of a ProductConfiguration to the version that replaces it (successor).
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductConfigurationRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductDefinitionElementRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductDefinitionElementRelationship is a relationship between a
            BreakdownElementDefinition or a BreakdownElementUsage and a ViewDefinitionRelationship
            or a ProductViewDefinition </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute breakdown to SELECT-->
               <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the BreakdownElementDefinition or a BreakdownElementUsage
                        that is related to the ViewDefinitionRelationship or ProductViewDefinition.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute product to SELECT-->
               <xsd:element name="Product" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ViewDefinitionRelationship or ProductViewDefinition
                        that is related to the BreakdownElementDefinition or a
                        BreakdownElementUsage. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductDesignToIndividual" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductDesignToIndividual is a relationship between a product design,
            represented by Product, and the product that is planned to be made or has been made from
            the design, represented by ProductAsIndividual. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute productDesign to entity-->
               <xsd:element name="ProductDesign" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the design of the product that is being made.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute individualProduct to entity-->
               <xsd:element name="IndividualProduct" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product that has been or is planned to be made from
                        this design. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductDesignVersionToIndividual" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductDesignVersionToIndividual is a relationship between a version
            of a product design, represented by ProductVersion or ProductConfiguration, and the
            product that is planned to be made ( ProductAsPlanned) or has been made (
            ProductAsRealized) from the design. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute productDesignVersion to SELECT-->
               <xsd:element name="ProductDesignVersion" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the version of the product design that is being made.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute individualProduct to entity-->
               <xsd:element name="IndividualProduct" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product that has been or is planned to be made from
                        this version of the design. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductDesignViewToIndividual" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductDesignViewToIndividual is a relationship between a product
            design, represented by ProductViewDefinition. or ProductConfiguration, and a view of the
            product that is planned to be made or has been made ( ProductAsIndividualView) from the
            design. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute productAsIndividualView to entity-->
               <xsd:element name="ProductAsIndividualView" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product as individual view represented by a
                        ProductAsIndividualView entity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute productViewDefinition to SELECT-->
               <xsd:element name="ProductViewDefinition" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the product design, that is a generalization of a
                        ProductViewDefinition or a ProductConfiguration. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductGroup" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductGroup is an identification of a set of ProductConcepts,
            Products, ProductGroups, ProductVersions or ProductAsIndividuals that have been grouped
            together. All the aircraft sold to BigPlanes airways. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductGroup
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ProductGroup.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProductGroup This ProductGroup is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute membershipRule to entity-->
               <xsd:element name="MembershipRule" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the characteristics that are common to all members of this
                        group. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute productGroupContext to entity-->
               <xsd:element name="ProductGroupContext" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the context in which the product group has meaning. The
                        value of this attribute need not be specified. The project or equipment end
                        item to which the group belongs. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ProductGroupRelationship" type="ProductGroupRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductGroupMembership" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductGroupMembership is an identification of an instance of an
            entity defined in the type ProductGroupMembershipSelect that belongs to a ProductGroup.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductGroupMembership
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute member to SELECT-->
               <xsd:element name="Member" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instance that is a member of the ProductGroup.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute ofGroup to entity-->
               <xsd:element name="OfGroup" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ProductGroup to which the instance identified by
                        ProductGroupMembership belongs. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductGroupRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductGroupRelationship is a relationship between two ProductGroups.
            ExternalOwlClass is used to specify the meaning or type of the relationship. NOTE: A
            subset is a common type of relationship. It indicates that one ProductGroup is a subset
            of another. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductGroupRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ProductGroup that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductInAttachmentSlot" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductInAttachmentSlot is a specialization of ViewDefinitionUsage
            that is a relationship between an AttachmentSlot and a ProductViewDefinition of a
            Product that is designed to be attached to the attachment slot. A long-range fuel tank
            is designed to be attached to an aircraft in an attachment slot that corresponds to a
            pylon mounting on a wing. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionUsage">
            <xsd:sequence>
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductPlannedToRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductPlannedToRealized is a relationship that establishes that a
            revision of a planned artefact represented by ProductAsPlanned has been realized as a
            revision of an actual artefact ProductAsRealized. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute plannedProduct to entity-->
               <xsd:element name="PlannedProduct" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the planned product represented by a ProductAsPlanned
                        entity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute realizedProduct to entity-->
               <xsd:element name="RealizedProduct" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the realized product represented by a ProductAsRealized
                        entity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductRelationship is an association between two Products.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Product that is a part of the
                        relationship. If one element of the relationship is dependent on the other,
                        this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductVersion is a revision of a Product. It is a collector of the
            definitions of this revision of the Product. NOTE: The set of all instances of
            ProductVersion of the same Product represents the history of the product.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductVersion
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ProductVersion.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProductVersion This ProductVersion is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <xsd:element name="ViewDefinitions" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the views of the ProductVersion. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ProductViewDefinition" type="ProductViewDefinition"
                           minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EnvironmentAssignment" type="EnvironmentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionGroupAssignment" type="PositionGroupAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionTypeAssignment" type="PositionTypeAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SelectedItemAssignment" type="SelectedItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ProductVersionRelationship" type="ProductVersionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SuppliedPartRelationship" type="SuppliedPartRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductVersionRelationship is an association between two versions of
            Product. NOTE: A relationship may exist between ProductVersion of different Product or
            between different versions of the same Product. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ProductVersion that is a part of the
                        relationship. If one element of the relationship is dependent up on the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProductViewDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProductViewDefinition is a characterization of a ProductVersion,
            relevant in one or more application domains and for one or more life cycle stages. A
            ProductViewDefinition is a collector of the properties that characterize the
            ProductVersion in the initialContext and additionalContexts. The design of the SS
            Titanic and the as-built description of the SS Titanic can be represented as two
            instances of ProductViewDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ProductViewDefinition
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a set of text based descriptions of the
                        ProductViewDefinition. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ProductViewDefinition This ProductViewDefinition is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute initialContext to entity-->
               <xsd:element name="InitialContext" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the initial ViewDefinitionContext in which the
                        definedVersion has been characterized by the ProductViewDefinition.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute additionalContexts to entity-->
               <xsd:element name="AdditionalContexts" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ViewDefinitionContext" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionGroupAssignment" type="PositionGroupAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PositionAssignment" type="PositionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PositionTypeAssignment" type="PositionTypeAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AssemblyViewRelationship" type="AssemblyViewRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="NextAssemblyViewUsage" type="NextAssemblyViewUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProductInAttachmentSlot" type="ProductInAttachmentSlot"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PromissoryAssemblyViewUsage" type="PromissoryAssemblyViewUsage"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ViewDefinitionRelationship" type="ViewDefinitionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ViewDefinitionUsage" type="ViewDefinitionUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Project" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Project is an identified program of work. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Project </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Project.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Project This Project is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute responsibleOrganizations to entity-->
               <xsd:element name="ResponsibleOrganizations" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Organization" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute plannedStartDate to SELECT-->
               <xsd:choice>
                  <xsd:element name="PlannedStartActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="PlannedStartDate" type="xsd:dateTime" minOccurs="0"
                     maxOccurs="1"/>
               </xsd:choice>
               <!--EXPRESS attribute plannedEndDate to SELECT-->
               <xsd:choice>
                  <xsd:element name="PlannedEndActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="PlannedEndDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1"
                  />
               </xsd:choice>
               <!--EXPRESS attribute actualStartDate to defined type-->
               <xsd:element name="ActualStartDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the date and time when the Project was actually started.
                        The value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute actualEndDate to defined type-->
               <xsd:element name="ActualEndDate" type="xsd:dateTime" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the date and time when the Project was actually finished.
                        The value of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemAssignment" type="ResourceItemAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ProjectRelationship" type="ProjectRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProjectAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProjectAssignment is a mechanism to associate a Project with activity
            or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedProject to entity-->
               <xsd:element name="AssignedProject" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Project that is associated. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProjectRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ProjectRelationship is an association between two instances of Project
            with an identification and a description of their relationship. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Project that is a part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PromissoryAssemblyViewUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A PromissoryAssemblyViewUsage is a specialization of
            AssemblyViewRelationship. It establishes a relationship between an assembly and a
            component, regardless of the number of intermediate levels between them, which may be
            established with instances of NextAssemblyViewUsage. NOTE: A PromissoryAssemblyViewUsage
            may be used when the product structure is not completely defined, to capture the intent
            that the constituent will be used in that assembly. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssemblyViewRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PropertyDefinitionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PropertyDefinitionAssignment is a specialization of an
            AssignmentObject that represents the assignment of a ExternalPropertyDefinition to
            product or activity data. NOTE: The meaning of the assignment is determined by
            classification which is identified by the AssignmentObject property. The possible
            classifications are subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--EXPRESS attribute assignedPropertyDefinition to entity-->
               <xsd:element name="AssignedPropertyDefinition" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExternalPropertyDefinition that is assigned.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute allowedUnits to entity-->
               <xsd:element name="AllowedUnits" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ExternalUnit" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PropertyDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> To be defined </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> To be defined </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PropertyValue" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A PropertyValue acts as a proxy for a notional property value which may
            have several representations. NOTE: The actual magnitude and descriptions of a
            PropertyValue (e.g. 1 kilogramme or 2.2 pounds) are only provided as part of one or more
            representations of a PropertyValue. The PropertyValue itself cannot have a magnitude, or
            even a name, that is independent of the type of representation chosen for the value in
            question. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this PropertyValue This PropertyValue is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to entity-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExternalPropertyDefinition that defines the property
                        for which the PropertyValue is a value. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute qualifications to entity-->
               <xsd:element name="Qualifications" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the MeasureQualification that is that provides information
                        about the uncertainty associated with the measured PropertyValue.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="MeasureQualification" type="MeasureQualification"
                           minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="PropertyValueRelationship" type="PropertyValueRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PropertyValueAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PropertyValueAssignment assigns a PropertyValue (or collection of
            equivalent PropertyValues) to activity or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--EXPRESS attribute assignedPropertyValues to entity-->
               <xsd:element name="AssignedPropertyValues" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PropertyValue, or collection of equivalent
                        PropertyValues, assigned to activity or product data. NOTE: This allows
                        multiple representations of the same conceptual property value to be
                        assigned, each property value should have the same property definition. A
                        collection of mass properties such as "1Kg" and "2.2lb" could be assigned
                        representing the same conceptual mass in different units.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute valueAssignmentContext to entity-->
               <xsd:element name="ValueAssignmentContext" type="cmn:Reference" minOccurs="0"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PropertyDefinitionAssignment that provides the context
                        in which the PropertyValue has been assigned. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="PropertyValueRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A PropertyValueRelationship is a specialization of RelationshipObject.
            It represents an association between two PropertyValues. An association between a value
            for a property expressed in a given unit and an equivalent value for the same property
            in a different unit. The PropertyValueRelationship is classified as a .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the secondary PropertyValue in a property value
                        relationship. PropertyValue </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Proxy" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A Proxy is a relationship between a subject and something for which the
            subject is a proxy. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ProxyRelationship" type="ProxyRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
            <xsd:attribute name="sameAsRef" type="xsd:IDREF"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ProxyRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ProxyRelationship is a relationship between a pair of Proxys. NOTE:
            This relationship may be classified to provide more specific meanings.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of Proxy that is part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="QualificationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A QualificationAssignment is the assignment of a qualification to a
            person or organization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedQualificationType to entity-->
               <xsd:element name="AssignedQualificationType" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the type of qualification that has been gained by the
                        person or organization. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="QualificationType" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A QualificationType is the identification of a definitive recognition as
            a practitioner. A driving licence. A qualification for executing the Ground Running task
            for RB211 engines. A Military rank such as Colonel, or Captain Educational qualification
            such as GCSE, A level, Degree, Ordinary National Certificate, Higher National
            Certificate, City and Guilds, or GNVQ. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the QualificationType
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the QualificationType.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="QualificationTypeRelationship"
                  type="QualificationTypeRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="QualificationTypeRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A QualificationTypeRelationship is an association between two
            QualificationTypes. Qualification X is a prerequisite for qualification Y. Qualification
            X is equivalent to qualification Y. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance QualificationTypes participating in the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="QualitativeUncertainty" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A QualitativeUncertainty is a specialization of UncertaintyQualifier.
            The uncertainty is defined in clause 2 of "The Guide to the Expression of Uncertainty in
            Measurement". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="UncertaintyQualifier">
            <xsd:sequence>
               <!--EXPRESS attribute uncertaintyValue to entity-->
               <xsd:element name="UncertaintyValue" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies a STRING for the QualitativeUncertainty.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RandomVariable" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RandomVariable is a specialization of NumericalValue that is the
            value of a random variable. NOTE: The value attribute is inherited from the parent
            generalization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RegionalCoordinate" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RegionalCoordinate is a location that is specified relative to a
            Regional location system. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RegionalCoordinate This RegionalCoordinate is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute coordinateValue to entity-->
               <xsd:element name="CoordinateValue" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the value and unit for the coordinate within the regional
                        location system used. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute gridSystem to entity-->
               <xsd:element name="GridSystem" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the RegionalGridLocationRepresentation in which the
                        regional coordinate is used. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RegionalGridLocationRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RegionalGridLocationRepresentation is a specialization of
            LocationRepresentation that specifies a reference grid system. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LocationRepresentation">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RelatedConditionParameter" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RelatedConditionParameter is a relationship between a
            ConditionParameter and a ConditionEvaluationParameter. This relationship is used to
            record the relationship between the parameters used to define a condition and the
            parameters used to evaluate it. The value of oil pressure (1.9 bar) used in
            ConditionEvaluation (instance 87) was a measured value of the parameter used to define
            condition 29 (oil pressure on gauge 3). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        RelatedConditionParameter. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RelatedConditionParameter This
                        RelatedConditionParameter is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute conditonEvaluationParameter to entity-->
               <xsd:element name="ConditonEvaluationParameter" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ConditionEvaluationParameter being related.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute conditionParameter to entity-->
               <xsd:element name="ConditionParameter" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ConditionParameter being related. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RelatedConsequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RelatedConsequence is a specialization of ViewDefinitionRelationship
            describing the expected consequences of a specific perception of a risk.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RelationshipObject" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A RelationshipObject represents a dependency between sets of product or
            activity data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the RelationshipObject.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RelationshipObject This RelationshipObject is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RepeatCount" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RepeatCount is a type of LoopingElement. It invokes a specified number
            of repetitions of the LoopingElement TaskElement inherited from the LoopingElement
            parent generalization. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LoopingElement">
            <xsd:sequence>
               <!--EXPRESS attribute count to base type-->
               <xsd:element name="Count" type="xsd:integer" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the number of times the LoopingElement is to be executed.
                        NOTE: If the RepeatCount entity is combined with the other subtypes of
                        LoopingElement, this becomes the maximum number of repetitions.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RepeatUntil" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RepeatUntil is a type of LoopingElement. It invokes repetitions of a
            further TaskElement and is repeated until the specified condition is satisfied. The
            element being repeated shall be executed at least once and the condition tested after
            the first execution. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LoopingElement">
            <xsd:sequence>
               <!--EXPRESS attribute condition to entity-->
               <xsd:element name="Condition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the criterion to be tested in order to determine that the
                        looping method shall be exited. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RepeatWhile" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RepeatWhile is a type of LoopingElement. It invokes repetitions of a
            further TaskElement and is repeated while the specified condition is satisfied. The test
            condition shall be evaluated prior to invoking the method and may result in the
            LoopingElement not being executed at all. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="LoopingElement">
            <xsd:sequence>
               <!--EXPRESS attribute condition to entity-->
               <xsd:element name="Condition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the criterion to be tested in order to determine that the
                        LoopingElement shall be continued. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequiredResource" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RequiredResource is an identified need for resource. The role of a
            required resource is determined by classification. "facility", "test equipment",
            "supervisor" are examples of classifications of a required resource.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the RequiredResource
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the RequiredResource.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RequiredResource This RequiredResource is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute requiredQuantity to entity-->
               <xsd:element name="RequiredQuantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the required quantity of the required resource. The value
                        of this attribute need not be specified. Quantity can be specified using
                        amount or duration. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute item to SELECT-->
               <xsd:element name="Item" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a reference to an identifiable item (within the application
                        context) that will satisfy that requirement for a resource. Tool kit,
                        facility, and product category are examples of resource items.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="RequiredResourceRelationship" type="RequiredResourceRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequiredResourceAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequiredResourceAssignment is an association of a resource requirement
            statement with one or more entities that requires the resource. task, task step,
            activity, activity method, organization are examples of entities to which the resource
            requirement statement could be related. The role of the assignment is determined by
            classification. The assignment can be classified as "required by". NOTE: An association
            between a required resource and actions that are needed prior to its usage. A resource
            required by the activity "12" needs to be calibrated prior to usage. The calibration
            activity "21" is associated with the same required resource A resource required by the
            task "123" needs to be disposed after its usage. This disposal task "456" is associated
            with the same required resource. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedResource to entity-->
               <xsd:element name="AssignedResource" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the required resource that is to be associated with the
                        requiring entity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequiredResourceRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequiredResourceRelationship is a relationship between two required
            resource statements. The meaning of the relationship is determined by classification.
            "alternative" and "realized by" are examples of required resource relationship.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the RequiredResourceRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of RequiredResource that is a part of
                        the relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Requirement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Requirement is a specialization of Product that is used to uniquely
            identify a requirement. NOTE: The term "requirement" is used here in the sense that term
            is used in systems engineering and similar industrial domains. NOTE: There may be many
            versions of a requirement RequirementVersion ). There may also be more than one
            domain-specific view of a given RequirementVersion (using the RequirementViewDefinition
            entity). The requirement entity is simply a placeholder for holding a unique
            requirement. Most associations and properties are defined at the
            RequirementViewDefinition level - that is in the context of a domain. A requirement may
            be identified as "NOx emissions requirement", and uniquely identified as "Req2". NOTE:
            Systems engineering tools and organizations may use differing identification mechanisms.
            Multiple identifiers may be assigned to a requirement using the Identifier entity.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementAssignment is used to relate a requirement (via the
            RequirementViewDefinition entity) to data types representing the items which are
            affected by the requirement. A requirement "the vehicle shall have a maximum power
            output of at least 150BHP" could be assigned to the data types which are used to
            represent the vehicle's engine. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedRequirement to entity-->
               <xsd:element name="AssignedRequirement" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the RequirementViewDefinition which is assigned.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementCollectionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RequirementCollectionRelationship is a specialization of
            ViewDefinitionRelationship that is used to relate a parent (collection) requirement to
            its member requirements. This provides a method for collecting together a set of
            requirements and treating them as a single requirement, whilst still being able to refer
            to individual requirements. NOTE: The inherited " ViewDefinitionRelationship" and "
            ViewDefinitionRelationship" attributes have been renamed for purposes of clarity.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RequirementViewDefinitionRelationship">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementSatisfiedBy" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementSatisfiedBy is a relationship between an item (specified in
            RequirementAssignmentSelect) and a requirement, asserting that the item satisfies the
            identified requirement. A data type used to represent a vehicle's engine with a power
            output of 160BHP could be asserted to satisfy a requirement "the vehicle shall have a
            maximum power output of at least 150BHP". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the RequirementSatisfiedBy
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        RequirementSatisfiedBy. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RequirementSatisfiedBy. This RequirementSatisfiedBy is
                        a member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute satisfiedBy to SELECT-->
               <xsd:element name="SatisfiedBy" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that satisfies the requirement.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute satisfiedRequirement to entity-->
               <xsd:element name="SatisfiedRequirement" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the requirement that is satisfied. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute relatedAssignment to entity-->
               <xsd:element name="RelatedAssignment" type="cmn:Reference" minOccurs="0"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the RequirementAssignment that is satisfied by the
                        RequirementSatisfiedBy. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementSource" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementSource is a relationship between a requirement (via the
            RequirementViewDefinition entity) and the data types representing the source of the
            requirement The source of the requirement "the vehicle shall have a maximum power output
            of at least 150BHP" could be a document representing the findings of a market survey of
            sports car buyers. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the RequirementSource
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the RequirementSource.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this RequirementSource This RequirementSource is a member of
                        the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute source to SELECT-->
               <xsd:element name="Source" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item which is the source of the requirement.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute sourcedRequirement to entity-->
               <xsd:element name="SourcedRequirement" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the requirement which is to be related to its source.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementVersion is a specialization of ProductVersion that
            identifies a particular version of a requirement. NOTE: This entity is used to record
            different versions of a requirement. In this case, the word "version" implies "revision"
            - that is a particular release of a requirement. A given requirement might have versions
            1.0, 1.1, 1.2 and 2.0. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="RequirementVersionRelationship"
                  type="RequirementVersionRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementVersionRelationship is a specialization of
            ProductVersionRelationship that is used to relate a previous version (predecessor) of a
            requirement to the version that replaces it (successor). </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the RequirementVersionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementViewDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RequirementViewDefinition is a specialization of
            ProductViewDefinition that provides a view of a requirement version relevant for one or
            more application domains. This view collects requirement data for specific engineering
            purposes. An engineer may have responsibility for collecting all requirements associated
            with the cooling of an engine - covering engine block, tubing, water pump, electric fan.
            Some requirements in a RequirementViewDefinition might impact on different disciplines.
            Multiple RequirementViewDefinition instances may be used to present different views of a
            given requirement for each discipline. The definition of the requirement is represented
            by a set of definitional properties referenced from
            RequirementViewDefinition.definitionalRepresentations. If more than one definitional
            property is provided each property shall be equivalent. Any other property that is
            associated with the RequirementViewDefinition is assumed to be a non-defining property,
            such as an annotation etc. The requirement that the weight should be less than 4 Kgs can
            be represented by by a string representation "weight must be 4Kg" and a numeric
            representation "4Kg" specified as a value with units. NOTE: The definition attribute of
            each of the definitionalRepresentations shall refer to a definition for
            RequirementDefinition. The definition attribute of the definitionalRepresentations could
            refer to an ExternalPropertyDefinition that uses an ExternalOwlObject with individual
            set to
            "http://docs.oasis-open.org/plcs/ns/plcslib/v1.0/data/contexts/OASIS/refdata/plcs-rdl#Requirement_definition".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute definitionalRepresentations to entity-->
               <xsd:element name="DefinitionalRepresentations" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the properties that define the
                        requirement</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="RequirementCollectionRelationship"
                  type="RequirementCollectionRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementViewDefinitionRelationship"
                  type="RequirementViewDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TracingRelationship" type="TracingRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RequirementViewDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RequirementViewDefinitionRelationship is a specialization of
            ViewDefinitionRelationship. A RequirementViewDefinitionRelationship is the association
            between one RequirementViewDefinition and another. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceAsRealized" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceAsRealized is a record of a resource that has been used or
            consumed. A resource as realized can be classified as "Used" or "Consumed".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ResourceAsRealized
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ResourceAsRealized.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ResourceAsRealized This ResourceAsRealized is a member
                        of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the amount of the ResourceAsRealized that has been used or
                        consumed. The value of this attribute need not be specified. The quantity
                        can be recorded as amount or duration. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute item to SELECT-->
               <xsd:element name="Item" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a reference to an item that is provided with resource
                        management capabilities. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ResourceAsRealizedRelationship"
                  type="ResourceAsRealizedRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceAsRealizedAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceAsRealizedAssignment is an association of a resource record
            statement with the entity that used or consumed the resource. The role of the assignment
            is determined by classification. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedResource to entity-->
               <xsd:element name="AssignedResource" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the resource record that is to be associated with one or
                        more activities or tasks that used or consumed the resource.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceAsRealizedRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ResourceAsRealizedRelationship is a relationship between the record
            of used or consumed resources and the corresponding statement of RequiredResource.
            "Alternative" and "Corresponding" are examples of classifications of resource as
            realized relationship. NOTE: A resource used or consumed can be recorded without having
            a corresponding resource requirement statement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to SELECT-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of that is a part of the relationship.
                        If one element of the relationship is dependent upon the other, this
                        attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceEvent" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A ResourceEvent is an abstract generalization of instances that
            represents an event or action that affects the balance or availability of a managed
            resource. NOTE: Only non-abstract specializations of the ResourceEvent can be
            instantiated. A ResourceEvent is The role of a resource event is determined by which is
            defined by the ResourceEvent property. A resource event can be classified as "Planned"
            or "Actual". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ResourceEvent
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ResourceEvent.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ResourceEvent This ResourceEvent is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the measure of the amount of resource affected by the
                        change. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute resource to entity-->
               <xsd:element name="Resource" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the managed resource that is affected by the resource
                        event. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeEntryAssignment" type="SchemeEntryAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ResourceEventCorrespondenceRelationship"
                  type="ResourceEventCorrespondenceRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceEventRelationship" type="ResourceEventRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceEventCorrespondenceRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceEventCorrespondenceRelationship is an association of a
            resource event and a corresponding statement of RequiredResource. The meaning of the
            relationship is determined by classification. NOTE: A resource event can be planned or
            recorded without having a corresponding resource requirement statement. A resource event
            correspondence relationship can be classified as "Designated for". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instance of RequiredResource being related.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceEventRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceEventRelationship is a specification of how an ResourceEvent
            may be associated with another ResourceEvent. The meaning of the relationship is
            determined by classification. A managed resource relationship can be classified as
            "realized by" or "replaces". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ResourceEvent that is a part of the
                        relationship. If one element of the relationship is dependent upon the other
                        then this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceGroupRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceGroupRelationship is a specialization of
            ResourceItemRelationship that specifies the means to associate two resource items that
            are part of a resource group. The meaning of the entity is determined by classification.
            The relationship between a tool set and a mallet could be classified as "Contains". The
            relationship between a facility and compressed air could be classified as "Provides".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ResourceItemRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the measure of the amount of related ResourceItem. The
                        value of the attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceItem" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ResourceItem is an item that can occur in the role of a resource
            within the application context. A ResourceItem may be classified as "Facility",
            "Replaceable unit", or "Package". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ResourceItem
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ResourceItem.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this ResourceItem This ResourceItem is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ResourceGroupRelationship" type="ResourceGroupRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ResourceItemRelationship" type="ResourceItemRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceItemAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ResourceItemAssignment is an association of a resource item with some
            product information. The role of the assignment is determined by classification. The
            assignment can be classified as "applicable to" or "acquired for". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedResource to entity-->
               <xsd:element name="AssignedResource" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the resource item that is to be associated with an item.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceItemRealization" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ResourceItemRealization is a specification of how a resource item may
            be associated with an item that serves as the resource. A product may serve as a
            resource. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssociationObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ResourceItemRealization
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute item to SELECT-->
               <xsd:element name="Item" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the item that is to be associated with the resource that it
                        serves as. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute resourceItem to entity-->
               <xsd:element name="ResourceItem" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the resource that is to be associated with an item that
                        serves as that resource. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ResourceItemRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A ResourceItemRelationship is a specification of how a resource item
            may be associated with another resource item. The role of the relationship is determined
            by classification. The relationship between a product and a package can be classified as
            "Preferred". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ResourceItemRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the other instance of ResourceItem that is a part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Risk" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Risk is a specialization of Product that is the potential for
            realization of unwanted negative consequences of an event. NOTE: ISO GUIDE 73 defines
            "risk" as the combination of the probability of an event and its consequence. In some
            situations, risk is a deviation from the expected. NOTE: A risk can also have a possible
            positive outcome. In such cases it is often referred to as an opportunity or reward.
            NOTE: ISO/IEC Guide 51:1999 defines risk as the combination of the probability of
            occurrence of harm and the severity of that harm. NOTE: In the safety field, risk
            management is focused on prevention and mitigation of harm. ISO/IEC Guide 51:1999 should
            be used for safety aspects. 'Line shutdown' is an example of Risk in the context of a
            manufacturing system's reliability. 'Transportation jam-up', 'customer anger',
            'collateral damage', and 'greater susceptibility to interruption of supply during
            crises' are all examples of Risk. 'Privacy' and 'security' are examples of Risk for the
            telecommunications industry. 'Fly-by-wire', the form-fit-function replacement of
            mechanical devices with a combination of electrical, hydraulic, and pneumatic units.
            Timing such as 'premature rejection' and 'premature commitment' are other examples of
            Risk. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="RiskRelationship" type="RiskRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskConsequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RiskConsequence is a specialization of RiskViewDefinition and
            specifies the outcome of an event. NOTE: There may be one or more consequences of an
            event. NOTE: Consequences can range from positive to negative. However, consequences are
            always negative for safety aspects. NOTE: Consequences can be expressed qualitatively or
            quantitatively. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RiskViewDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="CausalConsequence" type="CausalConsequence" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskEvent" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskEvent is a specialization of an AssignmentObject that represents
            the unwanted (or wanted) event resulting in the RiskPerception. The probability of the
            event occurring is represented by a set of probabilities referenced from
            RiskEvent.probabilityRepresentations. If more than one probability is provided each
            probability shall be equivalent. NOTE: The definition attribute of the
            probabilityRepresentations shall refer to a definition for perceivedProbability. The
            definition attribute of the probabilityRepresentations could refer to an
            ExternalPropertyDefinition that uses an ExternalOwlObject with individual set to
            "http://docs.oasis-open.org/plcs/ns/plcslib/v1.0/data/contexts/OASIS/refdata/plcs-rdl#Perceived_Probability".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedActivityMethod to entity-->
               <xsd:element name="AssignedActivityMethod" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ActivityMethod that defines the event.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to entity-->
               <!--EXPRESS attribute probabilityRepresentations to entity-->
               <xsd:element name="ProbabilityRepresentations" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the probability representations of the risk event
                        occurring. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Probability" type="Probability" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskImpactAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskImpactAssignment is a specialization of AssignmentObject and a
            type of PropertyAssignmentSelect. It assigns a set of items that might be impacted to
            the RiskConsequence that is the cause of the effect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedRiskImpact to SELECT-->
               <xsd:element name="AssignedRiskImpact" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the items impacted by the RiskConsequence.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to entity-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskPerception" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskPerception is a specialization of RiskViewDefinition that defines
            values or concerns (a risk level) with which a stakeholder views a particular Risk. The
            risk level is represented by a set of property values referenced from
            RiskPerception.riskLevelRepresentations. If more than one property value is provided
            each property value shall be equivalent. One riskLevelRepresentation could be 4 (from a
            maximum of 5) and a second could be "high". NOTE: The definition attribute of each of
            the riskLevelRepresentations shall refer to a definition for RiskLevel. The definition
            attribute of the riskLevelRepresentations could refer to an ExternalPropertyDefinition
            that uses an ExternalOwlObject with individual set to
            "http://docs.oasis-open.org/plcs/ns/plcslib/v1.0/data/contexts/OASIS/refdata/plcs-rdl#Risk_Level".
            NOTE: RiskPerception depends on the stake holder's expressed needs, issues, and
            knowledge. NOTE: RiskPerception can differ from objective data. NOTE: RiskPerception may
            be used qualitatively or quantitatively to form a risk matrix. NOTE: Risk will be
            perceived differently in different contexts, such as in the context of human safety,
            mission success, project time schedule, performance or economy. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RiskViewDefinition">
            <xsd:sequence>
               <!--EXPRESS attribute riskLevelRepresentations to entity-->
               <xsd:element name="RiskLevelRepresentations" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> optionally defines a collection of representations for an
                        identifiable goal or objective for the RiskPerception. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <xsd:element name="RiskEvent" type="RiskEvent" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded relationships-->
               <xsd:element name="RelatedConsequence" type="RelatedConsequence" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RiskPerceptionRelationship" type="RiskPerceptionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskPerceptionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A RiskPerceptionRelationship defines an association between two
            instances of RiskPerception. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <!--embedded assignments-->
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskPerceptionSourceAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskPerceptionSourceAssignment is a specialization of
            AssignmentObject. It assigns a set of one or many items that are the source for a
            RiskPerception to the RiskPerception. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedRiskSource to SELECT-->
               <xsd:element name="AssignedRiskSource" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the items which are identified as the source of the
                        RiskPerception. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to entity-->
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskRelationship is a specialization of ProductRelationship. It is an
            association between two an association between two instances of Risk.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A RiskVersion is a specialization of ProductVersion. It defines a form
            of a risk that differ in certain respects from an earlier form of that risk or from
            other forms of that risk. NOTE: Use of RiskVersion allows several RiskPerception
            instances to be assigned to a specific Risk. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="RiskViewDefinition" abstract="true">
      <xsd:annotation>
         <xsd:documentation> ARiskViewDefinition is a specialization of a ProductViewDefinition  and
            is an abstract generalization of instances that represents … NOTE: Only non-abstract
            specializations of the RiskViewDefinition can be instantiated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Scheme" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Scheme is a specialization of ActivityMethod. It provides the
            identification and description of an intended course of action to accomplish an
            objective. A Scheme enables the ordering of entries. Dates and times may be specified
            for entries and time intervals between entries. NOTE: A Scheme may be classified as a
            Plan or Schedule, and it may be further classified into specific types of Plans or
            Schedules. Acquisition plan, Maintenance plan, Resource schedule are examples of
            schemes. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--EXPRESS attribute versions to entity-->
               <xsd:element name="Versions" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the versions of the Scheme </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="SchemeVersion" type="SchemeVersion" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="SchemeRelationship" type="SchemeRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeEntry" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SchemeEntry is a specialization of ActivityMethod that provides the
            identification and description of a single entry in a specific Scheme. NOTE: A
            SchemeEntry may be associated with time constraints. NOTE: A SchemeEntry only exists
            within the scope of a specific Scheme. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="SchemeEntryRelationship" type="SchemeEntryRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SequencingRelationship" type="SequencingRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeEntryAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SchemeEntryAssignment is a specialization of an AssignmentObject that
            represents the assignment of SchemeEntry instances to instances that are specializations
            of SchemeEntryAssignmentSelect. NOTE: The meaning of the assignment is determined by
            classification which is identified by the AssignmentObject property. The possible
            classifications are subclasses of . NOTE: The SchemeEntryAssignment links the single
            items included in Plans and Schedules with their associated SchemeEntry. These items may
            be actions, events, or tasks depending on the nature of the Plan or Schedule.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedEntry to entity-->
               <xsd:element name="AssignedEntry" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the SchemeEntry that is assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeEntryRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SchemeEntryRelationship is a specialization of
            ActivityMethodRelationship. It relates two SchemeEntry entities. An association may
            exists between SchemeEntry entities that relate to different Scheme or between different
            SchemeEntry entity instances for the same Scheme. NOTE: The SchemeEntryRelationship
            provides the ability to relate entries included in Plans or Schedules in different ways.
            By applying classifications on the SchemeEntryRelationship it can be used for different
            purposes. Decomposition, Dependency, and sequencing are examples of kinds of
            relationships possible between schema entries. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SchemeRelationship is a specialization of ActivityMethodRelationship
            relating two Schemes. NOTE: The SchemeRelationship provides the ability to relate Plans
            or Schedules represented by the Scheme entity in different ways. If classifications are
            available to the schema using this on, by applying classifications on the
            SchemeRelationship it can be used for different purposes. Decomposition, based-on,
            alternative, version are kinds of relationships between Schemes. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeSubjectAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SchemeSubjectAssignment is a specialization of an AssignmentObject
            that represents the assignment of Scheme with a specific subject. NOTE: The meaning of
            the assignment is determined by classification which is identified by the
            AssignmentObject property. The possible classifications are subclasses of . NOTE: The
            SchemeSubjectAssignment links the Plans and Schedules with their associated subjects or
            targets. This may indicate the intent of the scheme. The maintenance plan for an
            individual vehicle, where the subject attribute points to an entity instance
            representing the individual vehicle. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedScheme to entity-->
               <xsd:element name="AssignedScheme" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the Scheme that is assigned to a specific subject.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SchemeVersion is a specialization of ActivityMethod. It enables
            version control of Scheme. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--EXPRESS attribute entries to entity-->
               <xsd:element name="Entries" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the SchemeEntrys that are within a SchemeVersion.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="SchemeEntry" type="SchemeEntry" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="SchemeVersionRelationship" type="SchemeVersionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeVersionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SchemeVersionAssignment is a specialization of an AssignmentObject
            that represents the assignment of a SchemeVersion instances to instances that are
            specializations of SchemeVersionAssignmentSelect. NOTE: The meaning of the assignment is
            determined by classification which is identified by the AssignmentObject property. The
            possible classifications are subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedSchemeVersion to entity-->
               <xsd:element name="AssignedSchemeVersion" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the SchemeVersion assigned to a set of
                        items</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SchemeVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SchemeVersionRelationship is a specialization of
            ActivityMethodRelationship relating two SchemeVersions. NOTE: The meaning of the
            relationship is determined by classification which is identified by the
            RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SecurityClassification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SecurityClassification is a level of confidentiality that can be
            applied to protect activity or product data against unauthorized usage.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the SecurityClassification
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        SecurityClassification. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        SecurityClassification.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SecurityClassificationAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SecurityClassificationAssignment is an association of a
            SecurityClassification with activity or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedSecurityClassification to entity-->
               <xsd:element name="AssignedSecurityClassification" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the SecurityClassification assigned to activity or product
                        data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SelectedItemAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SelectedItemAssignment is the identification of the product or
            activity data referenced by SelectedItemAssignment as being a member of a class
            identified by ClassSelect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedSelectedItem to entity-->
               <xsd:element name="AssignedSelectedItem" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the class to which the product or activity data referenced
                        by SelectedItemAssignment belongs. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--EXPRESS attribute itemContext to SELECT-->
               <xsd:element name="ItemContext" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the context in which the product or activity data is being
                        identified as being a ClassSelect. The engine is a identified as a selected
                        item on the car. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="Breakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="FunctionalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="PhysicalBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="SystemBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ZoneBreakdown" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Contract" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Part" type="cmn:Reference" minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="PartVersion" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividual" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsIndividualVersion" type="cmn:Reference"
                           minOccurs="1" maxOccurs="1"/>
                        <xsd:element name="ProductAsPlanned" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductAsRealized" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductConcept" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="ProductConfiguration" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="Project" type="cmn:Reference" minOccurs="1" maxOccurs="1"
                        />
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SequenceOfState" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SequenceOfState is a specialization of StateRelationship in which one
            set of State precedes another set of State. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SequenceOfStateDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SequenceOfStateDefinition is a specialization of
            StateDefinitionRelationship. It defines a sequence of two or more state definitions.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SequencingRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SequencingRelationship is a specialization of
            SchemeEntryRelationship. It defines a specific type of sequencing and relative timing
            for two SchemeEntry. NOTE: Specific types of sequencing could include start-start,
            finish-start. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="SchemeEntryRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute timeLag to entity-->
               <xsd:element name="TimeLag" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the amount of time, either positive or negative, before the
                        sequencing applies between the SchemeEntryRelationship and the
                        SchemeEntryRelationship. The value of this attribute need not be specified.
                        NOTE: For a positive timeLag, the SchemeEntryRelationship is the later entry
                        in time. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SerialEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SerialEffectivity is a specialization of Effectivity for which the
            domain of applicability is defined as a possibly open-ended interval of serial numbers.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute startId to entity-->
               <xsd:element name="StartId" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the first valid serial number. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute endId to entity-->
               <xsd:element name="EndId" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the last valid serial number. The value of the attribute
                        need not be specified. If the value for this attribute is not specified, the
                        interval of applicability has no upper bound. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SetMembership" abstract="false">
      <xsd:annotation>
         <xsd:documentation> ASetMembership is a relationship that is between a set and a thing that
            indicates the thing is a member of the set. NOTE: the term 'class' and 'set' are
            synonyms. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute member to SELECT-->
               <xsd:element name="Member" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the member of the set</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute ofSet to SELECT-->
               <xsd:element name="OfSet" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the set that has the thing as a member</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ShapeDependentPropertyRepresentation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ShapeDependentPropertyRepresentation is the representation of a
            characteristic derived from or imposed to an ItemShape or a ShapeElement. The centre of
            mass is an example of shape dependent property, of a shape, that can be represented by a
            cartesian point. The area and the volumes are examples of characteristic that can be
            represented by a measure value with unit. NOTE: A ShapeDependentPropertyRepresentation
            is independent of the representations of the shape. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ShapeDependentPropertyRepresentation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute characteristicType to entity-->
               <xsd:element name="CharacteristicType" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the string that specifies the type of the characteristic
                        that is represented. Where applicable, the following values shall be used:
                        'centre of mass': the characteristic is the centre of the mass of the
                        describedElement, evaluated or required independently of any representation
                        of the describedElement; 'centroid': the characteristic is the centre of
                        mass of a body as evaluated from a geometric representation of the
                        describedElement; NOTE: An instance of GeometricModelRelationship may be
                        used to relate the characteristicType with the GeometricModel from which the
                        centroid was computed. 'moment of inertia': the characteristic is the 3*3
                        matrix of inertia of the describedElement; 'surface area': the
                        characteristic is the extent of the surface of the describedElement;
                        'volume': the characteristic is the volume of the describedElement.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute describedElement to SELECT-->
               <xsd:element name="DescribedElement" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ItemShape or the ShapeElement from which the
                        characteristic has been derived or imposed. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute propertyRepresentation to entity-->
               <xsd:element name="PropertyRepresentation" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the PropertyValue that contains the items that express the
                        characteristic. NOTE: Depending on the characteristicType, the
                        describedElement may need to be a GeometricModel. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ShapeDescriptionAssociation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ShapeDescriptionAssociation is an association of a geometric
            representation with a shape characteristic. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ShapeDescriptionAssociation. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute representedCharacteristic to SELECT-->
               <xsd:element name="RepresentedCharacteristic" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instance of an element of ShapeSelect that is
                        represented. In case the representedCharacteristic is a
                        ShapeElementRelationship, the represented characteristic is the related
                        ShapeElement in the context of its relating ShapeElement.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute representation to entity-->
               <xsd:element name="Representation" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the GeometricModel that provides the representation.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ShapeElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ShapeElement is a portion of a shape. The threaded portion of the
            shape of a bolt may be represented as a ShapeElement, so that other properties, such as
            surface finish, may be associated with it. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the ShapeElement.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute elementName to entity-->
               <xsd:element name="ElementName" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the name of the ShapeElement. The value of this attribute
                        need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute containingShape to entity-->
               <xsd:element name="ContainingShape" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ItemShape that the ShapeElement is a part of.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ShapeElementRelationship" type="ShapeElementRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ShapeElementRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ShapeElementRelationship is a relationship between two instances of
            ShapeElement. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ShapeElementRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ShapeElement that takes part in the
                        relationship. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ShapePlacementAssociation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ShapePlacementAssociation is a specialization of
            ShapeDescriptionAssociation. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ShapeDescriptionAssociation">
            <xsd:sequence><!--EXPRESS attribute representation to entity--><!--EXPRESS attribute representedCharacteristic to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SimultaneousElements" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SimultaneousElements is a specialization of ConcurrentElements that
            represents two or more actions to be performed together. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ConcurrentElements">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StandardUncertainty" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StandardUncertainty is a specialization of UncertaintyQualifier. A
            StandardUncertainty may be an ExpandedUncertainty. The uncertainty is defined in clause
            2 of "The Guide to the Expression of Uncertainty in Measurement". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="UncertaintyQualifier">
            <xsd:sequence>
               <!--EXPRESS attribute uncertaintyValue to base type-->
               <xsd:element name="UncertaintyValue" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies a REAL value of the uncertainty.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StartTask" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StartTask is a type of TaskElement. It signifies the start point of
            the task. NOTE: Not all formal task description require start and end elements, their
            inclusion is in a sequence is optional. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="State" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A State is the mode of being in which something does or could exist or
            existed for a period of time. NOTE: A state's existence can be just a state that an
            instance is currently in, a predicted state that an instance will eventually be in, or
            an observed state that an instance has been in. NOTE: The period of existence may be an
            instant or longer. Main Engine No. 1 is in "operation". When Generator No. 2 surpasses
            5,000 service hours, it will enter "maintenance" mode. The portable computer's power
            supply was attached after it displayed a "low-battery" warning. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the State </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the State.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this State This State is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="CompositionOfState" type="CompositionOfState" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SequenceOfState" type="SequenceOfState" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateCauseEffect" type="StateCauseEffect" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateRelationship" type="StateRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateTransition" type="StateTransition" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateAssertion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateAssertion is used to assert that the subject State is in
            conformance with a particular StateDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the StateAssertion
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the StateAssertion.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this StateAssertion This StateAssertion is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute assertedState to entity-->
               <xsd:element name="AssertedState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the subject State being asserted. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute conformanceState to entity-->
               <xsd:element name="ConformanceState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a particular StateDefinition the subject State is being
                        asserted against. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateAssessment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateAssessment is used to determine whether the subject State is
            comparable with a particular StateDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the StateAssessment
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the StateAssessment.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this StateAssessment This StateAssessment is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute assessedState to entity-->
               <xsd:element name="AssessedState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a subject State that will be assessed against a particular
                        StateDefinition. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute comparableState to entity-->
               <xsd:element name="ComparableState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a particular StateDefinition the subject State is assessed
                        against. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="DefinedStateRelationship" type="DefinedStateRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An StateAssignment is a relationship that allows a subject to have State
            or to be in a State. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedState to entity-->
               <xsd:element name="AssignedState" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a State the subject has or is in. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateCauseEffect" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateCauseEffect is a specialization of state relationship and it
            relates two or more states as one state causing particular resulting effect state(s). In
            turn, an effect state can become a new causing state yielding in yet more effect states.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateCauseEffectDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateCauseEffectDefinition is a specialization of
            StateDefinitionRelationship that is used to define a causal relationship between two
            sets of StateDefinition entities. At least one StateDefinition acts as a cause and at
            least one StateDefinition acts as a effect. NOTE: Additional causal relationships
            between states can be expressed using the following subtypes:
            AndStateCauseEffectDefinition, OrStateCauseEffectDefinition, and
            XorStateCauseEffectDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateComplementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateComplementDefinition is a specialization of
            StateDefinitionRelationship. It is a relationship among three sets of StateDefinition
            entities. It defines the complement of a set of StateDefinition entities relative to a
            set of StateDefinition entities that are the universe. NOTE: The semantics are the same
            as in elementary set theory. NOTE: The relationship between a StateDefinition and its
            complement is symmetrical. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence>
               <!--EXPRESS attribute set2 to entity-->
               <xsd:element name="Set2" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="StateDefinition" type="cmn:Reference" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateDefinition is a mode of being. In formal systems, a
            StateDefinition is the definition of a situation during which some (usually implicit)
            invariant condition holds. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the StateDefinition
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the StateDefinition.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this StateDefinition This StateDefinition is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute definition to SELECT-->
               <xsd:element name="Definition" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file that provides the definition of the
                        StateDefinition.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="AndStateCauseEffectDefinition"
                  type="AndStateCauseEffectDefinition" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CompositionOfStateDefinition" type="CompositionOfStateDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrStateCauseEffectDefinition" type="OrStateCauseEffectDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SequenceOfStateDefinition" type="SequenceOfStateDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateCauseEffectDefinition" type="StateCauseEffectDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateComplementDefinition" type="StateComplementDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionRelationship" type="StateDefinitionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateProperSubsetDefinition" type="StateProperSubsetDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateSubsetDefinition" type="StateSubsetDefinition" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateSymptomDefinition" type="StateSymptomDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateTransitionDefinition" type="StateTransitionDefinition"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="XorStateCauseEffectDefinition"
                  type="XorStateCauseEffectDefinition" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateDefinitionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An StateDefinitionAssignment is a mechanism that enables an instance to
            have or to be in a StateDefinition. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedStateDefinition to entity-->
               <xsd:element name="AssignedStateDefinition" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the StateDefinition that is assigned. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateDefinitionRelationship is an association between two or more
            instances of StateDefinition. NOTE: Relationships between StateDefinition entities may
            be used to support fault diagnosis. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the StateDefinitionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other of the instances of StateDefinition that is a
                        part of the relationship. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateObserved" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateObserved is a specialization of State. It is an individual or
            realized State that is observed. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="State">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="StatePredictedToObserved" type="StatePredictedToObserved"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StatePredicted" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StatePredicted is a specialization of State It is a predicted actual
            State. Where a predicted state needs to be related to an observed state, the
            StatePredictedToObserved entity shall be used. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="State">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StatePredictedToObserved" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StatePredictedToObserved is a specialization of state relationship. It
            specifies the relationship between two individual states, one of which is a
            StatePredicted to a second state which is a StateObserved. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateProperSubsetDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateProperSubsetDefinition is a specialization of
            StateDefinitionRelationship. It is a relationship between two sets of StateDefinition
            entities. NOTE: The relationship between a state and its environment can be described as
            a StateProperSubsetDefinition. The identification of an intrinsic state is the
            properSubset. The identification of an extrinsic state is the properSuperset.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateRelationship is a relationship between two or more State.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the StateRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other of the set of instances of State that is a part
                        of the relationship. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateSubsetDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateSubsetDefinition is a specialization of
            StateDefinitionRelationship. It is a relationship between two sets of StateDefinition
            entities. NOTE: The first set may be equal to the second set. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateSymptomDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateSymptomDefinition is a specialization of
            StateDefinitionRelationship. It relates two or more StateDefinition entities in regards
            to symptom, where a symptom is something that indicates the existence of something else.
            At least one StateDefinition acts as a symptomCause and at least one StateDefinition
            acts as a symptomEffect. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateTransition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateTransition is a specialization of state relationship and it
            relates two or more states before and after a transition in State, where at least one
            State is a start state and at least one State is an end state. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StateTransitionDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StateTransitionDefinition is a specialization of
            StateDefinitionRelationship. It relates two or more StateDefinition entities before and
            after a transition in state, where at least one StateDefinition is a startState and at
            least one StateDefinition is an endState. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StringValue" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A StringValue is a specialization of PropertyValue that represents a
            sequence of one or more alphanumeric characters.</xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence>
               <!--EXPRESS attribute valueComponent to entity-->
               <xsd:element name="ValueComponent" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>specifies the string represented by the
                        StringValue.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="StructuredTaskElement" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A StructuredTaskElement is a type of TaskElement. It is made up of other
            TaskElements </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SubsetMember" abstract="false">
      <xsd:annotation>
         <xsd:documentation> ASubsetMember is a relationship that is between: set A; and set B. that
            indicates: each member of set A is also a member of set B. NOTE: Set A may be equal to
            set B. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute subset to SELECT-->
               <xsd:element name="Subset" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the set that contains all members of
                        subset.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute superset to SELECT-->
               <xsd:element name="Superset" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the set that contains only members of
                        superset.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SuppliedPartRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SuppliedPartRelationship is a specialization of
            ProductVersionRelationship that relates two instances of ProductVersion that represent
            the same instance in different organizational contexts. One of the organizations is the
            supplier of the instance to the other organization. This entity is applicable for part
            versions and document versions. NOTE: This entity enables to represent the fact that two
            organizations may use distinct identifiers to identify their Product and their versions.
            NOTE: This mechanism can only be used in an information system or in exchange files
            where the content of the id attribute of instances of Product is not constrained by a
            particular identification scheme. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersionRelationship">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="System" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A System is a specialization of Product used to identify a conceptual
            solution to a collection of requirements. NOTE: The concept system is any thing -
            matter, energy, organisation or information or a combination of these - for which
            reproducible measurements exist. The concept system excludes any asserted thing based on
            personal experience for which no reproducible measurements exist. NOTE: SEDRES
            Definition: "An assembly of interacting, active components or elements forming a whole".
            NOTE: Another definition would be "That which is discernible by reproducible measurement
            of its characteristics, and has a defined boundary (statically and dynamically) with
            respect to the universe". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Product">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemBreakdown" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemBreakdown is a specialization of Breakdown that identifies a
            partitioning of a system into a set of related elements so as to form explicit, assembly
            - component views that comprise the system elements. The assembly-component view is
            represented by SystemElementUsage instances relating the system elements in the
            breakdown which are represented by SystemElements. A system breakdown provides a
            decomposition of an aircraft in terms of high-level mechanisms such as fuel system or
            flight control system - which might, in the second example, further decompose into
            low-level systems such as autopilot system and instrument landing system.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Breakdown">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemBreakdownContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemBreakdownContext is a specialization of BreakdownContext that is
            a membership relationship between a SystemElement and a SystemBreakdown of which the
            system element is a member. A heating system is a member of the breakdown of a climate
            control system. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownContext">
            <xsd:sequence><!--EXPRESS attribute breakdown to entity--><!--EXPRESS attribute breakdownElement to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemBreakdownVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A SystemBreakdownVersion is a specialization of BreakdownVersion that
            identifies a version of a SystemBreakdown A logistics engineer modifies the current
            systems breakdown for an aircraft and associated support equipment on the basis of
            results from a level of repair analysis. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemElement is a specialization of BreakdownElement that identifies
            the elements in one or more SystemBreakdown instances. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElement">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemElementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemElementDefinition is a specialization of
            BreakdownElementDefinition that identifies a view of a version ( SystemElementVersion)
            of a SystemElement. The collision avoidance system element of a system breakdown is
            subject to a level of repair analysis to support implementation of optimized maintenance
            for an aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="SystemElementUsage" type="SystemElementUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemElementUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemElementUsage is a specialization of BreakdownElementUsage that
            is a relationship between a SystemElementDefinition and another SystemElementDefinition
            that is a constituent. In a system breakdown, the fuel system might include a fuel
            storage system and a fuel injection system as components. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementUsage">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemElementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemElementVersion is a specialization of BreakdownElementVersion
            that identifies a version of a SystemElement A sound engineer changes the details
            describing the public address system that is an element in a system breakdown of an
            aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemVersion is a specialization of ProductVersion that represents a
            particular version of a system. NOTE: In this case, this means "revision". So for a
            given system (e.g. a fuel injection system) we may have several versions of the system
            design (e.g. v1, v1.1 etc.) </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersion">
            <xsd:sequence>
               <!--EXPRESS attribute viewDefinitions to entity-->
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="SystemVersionRelationship" type="SystemVersionRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SystemVersionSequence" type="SystemVersionSequence" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemVersionRelationship is a specialization of
            ProductVersionRelationship used to relate versions of a system. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductVersionRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemVersionSequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemVersionSequence is a specialization of SystemVersionRelationship
            used to relate a previous version of a system to the version that replaces it.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="SystemVersionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="SystemViewDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A SystemViewDefinition is a specialization of ProductViewDefinition that
            provides a view of a system version relevant for one or more application domains.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ProductViewDefinition">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElement" abstract="true">
      <xsd:annotation>
         <xsd:documentation>A TaskElement is a specialization of ActivityMethod. It is a
            representation of all or part of how to undertake a task. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ElementConstraint" type="ElementConstraint" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskElementRelationship" type="TaskElementRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementStateRelationship" type="TaskElementStateRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElementAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TaskElementAssignment is a specialization of an AssignmentObject that
            represents the assignment of TaskElement instances to instances that are specializations
            of TaskAssignmentSelect. NOTE: The meaning of the assignment is determined by
            classification which is identified by the AssignmentObject property. The possible
            classifications are subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTaskElement to entity-->
               <xsd:element name="AssignedTaskElement" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the TaskElement that is assigned.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElementLevels" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskElementLevels is a type of TaskElement that provides two or more
            different descriptions in place of a single method. The actual work will be the same
            whichever alternative TaskElement is followed. NOTE: This can be used to provide
            different levels of description of a task for people with varying levels of experience
            or expertise. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute alternatives to entity-->
               <xsd:element name="Alternatives" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElements describing two or more ways in which the
                        same work may be undertaken. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="2"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElementRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskElementRelationship is a specialization of
            ActivityMethodRelationship. It relates two instances of TaskElement. Can be used to
            capture a time dependency that cuts across the structure of the method.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElementSequence" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskElementSequence is a specialization of TaskElement that comprises
            a sequence of steps to be followed in a specified order. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StructuredTaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute elements to entity-->
               <xsd:element name="Elements" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskElements to be followed in the order specified in
                        the list. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="2"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskElementStateRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskElementStateRelationship is an type of ActivityMethodRelationship.
            It is an association between a State or a StateDefinition and a TaskElement. The meaning
            of the entity is determined by classification. Candidate meanings include: assumed
            starting state; required starting state. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TaskElementStateRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute state to SELECT-->
               <xsd:element name="State" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the State or StateDefinition being related.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute taskElement to entity-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskInvocation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskInvocation is a type of TaskElement. It is an instruction to
            perform another task. A TaskElement calls a predefined task to perform an instrument
            calibration. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute taskMethod to SELECT-->
               <xsd:element name="TaskMethod" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskMethod to be invoked. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethod" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskMethod is a specialization of ActivityMethod. It is a
            specification of work. NOTE: The task method may be implemented using people, machines
            or a combination. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--EXPRESS attribute objective to entity-->
               <xsd:element name="Objective" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskObjective" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute versions to entity-->
               <xsd:element name="Versions" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the versions of the TaskMethod. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskMethodVersion" type="TaskMethodVersion" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="TaskMethodRelationship" type="TaskMethodRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TaskMethodAssignment is a specialization of an AssignmentObject that
            represents the assignment of TaskMethod instances to instances that are specializations
            of TaskAssignmentSelect. NOTE: The meaning of the assignment is determined by
            classification which is identified by the AssignmentObject property. The possible
            classifications are subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTaskMethod to entity-->
               <xsd:element name="AssignedTaskMethod" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TaskMethod being assigned. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TaskMethodRelationship is a specialization of
            ActivityMethodRelationship. It relates two task methods. NOTE: The meaning of the
            relationship is determined by classification which is identified by the
            RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodStateRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TaskMethodStateRelationship is a relationship between a state and a
            TaskMethod. NOTE: The meaning of the entity is determined by classification. Candidate
            meanings include: Assumed starting state; Required starting state. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TaskMethodStateRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute state to SELECT-->
               <xsd:element name="State" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the mode of being that is related. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute taskMethod to entity-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskMethodVersion is a specialization of ActivityMethod which allows
            the explicit reference to versions of a TaskMethodand to track changes against a
            TaskMethod. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethod">
            <xsd:sequence>
               <!--EXPRESS attribute content to entity-->
               <xsd:element name="Content" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the way in which the task is to be carried out. The value
                        of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TaskElement" type="TaskElement" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="TaskMethodStateRelationship" type="TaskMethodStateRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionRelationship"
                  type="TaskMethodVersionRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodVersionAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TaskMethodVersionAssignment is a specialization of an
            AssignmentObject that represents the assignment of TaskMethodVersion instances to
            instances that are specializations of TaskAssignmentSelect. NOTE: The meaning of the
            assignment is determined by classification which is identified by the AssignmentObject
            property. The possible classifications are subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTaskMethod to entity-->
               <xsd:element name="AssignedTaskMethod" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the TaskMethodVersion that is assigned.</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkOutputAssignment" type="WorkOutputAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskMethodVersionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskMethodVersionRelationship is a specialization of
            ActivityMethodRelationship. It relates two instances of TaskMethodVersion.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ActivityMethodRelationship">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskObjective" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskObjective is a result or objective that is reached by undertaking
            a TaskMethod. NOTE: More than one TaskMethod may be defined for a given objective, if
            there can be several ways to accomplish the objective. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TaskObjective
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the TaskObjective.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this TaskObjective This TaskObjective is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ProjectAssignment" type="ProjectAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="TaskObjectiveStateRelationship"
                  type="TaskObjectiveStateRelationship" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskObjectiveStateRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskObjectiveStateRelationship is a relationship between a state and a
            TaskObjective. NOTE: The meaning of the entity is determined by classification.
            Candidate meanings include: Intended finishing state; Alternative finishing state.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TaskObjectiveStateRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute state to SELECT-->
               <xsd:element name="State" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the mode of being that is related. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute taskObjective to entity-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TaskStep" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TaskStep is a specialization of TaskElement that is not further
            sub-divided. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TaskElement">
            <xsd:sequence>
               <!--EXPRESS attribute stepText to entity-->
               <xsd:element name="StepText" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the text describing what is to be done to accomplish the
                        TaskStep</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TimeInterval" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TimeInterval is the identification of an intervening time.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TimeInterval.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the TimeInterval.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="TimeIntervalRelationship" type="TimeIntervalRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TimeIntervalAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TimeIntervalAssignment is an association of a TimeInterval with
            product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTimeInterval to entity-->
               <xsd:element name="AssignedTimeInterval" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the instance of the TimeInterval entity data type that is
                        associated with product data. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TimeIntervalEffectivity" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TimeIntervalEffectivity is a specialization of Effectivity for which
            the domain of applicability is defined as a TimeInterval. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Effectivity">
            <xsd:sequence>
               <!--EXPRESS attribute effectivityPeriod to entity-->
               <xsd:element name="EffectivityPeriod" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TimeInterval that defines the domain of validity.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TimeIntervalRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TimeIntervalRelationship is the association of two instances of
            TimeInterval. The meaning of this association is specified in the
            TimeIntervalRelationship attribute. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of TimeInterval. If one element of the
                        relationship is dependent upon the other, this attribute shall be the
                        dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TimeIntervalWithBounds" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TimeIntervalWithBounds is a specialization of TimeInterval. A
            TimeIntervalWithBounds is bounded either on one side or both sides. If neither
            secondaryBound nor NumericalValue by the durationFromPrimaryBound are specified, the
            time interval begins at the point in time identified by primaryBound and has no
            specified end point. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="TimeInterval">
            <xsd:sequence>
               <!--EXPRESS attribute primaryBound to SELECT-->
               <xsd:choice>
                  <xsd:element name="PrimaryBoundActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="PrimaryBound" type="xsd:dateTime" minOccurs="0" maxOccurs="1"/>
               </xsd:choice>
               <!--EXPRESS attribute secondaryBound to SELECT-->
               <xsd:choice>
                  <xsd:element name="SecondaryBoundActivity" type="cmn:Reference" minOccurs="0"
                     maxOccurs="1"/>
                  <xsd:element name="SecondaryBound" type="xsd:dateTime" minOccurs="0" maxOccurs="1"
                  />
               </xsd:choice>
               <!--EXPRESS attribute durationFromPrimaryBound to entity-->
               <xsd:element name="DurationFromPrimaryBound" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the duration that specifies the length of the time interval
                        from the primary bound. If positive, the TimeIntervalWithBounds defines a
                        lower bounded time interval, else an upper bounded time interval. The value
                        of this attribute need not be specified. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="NumericalValue" type="NumericalValue" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TracingRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TracingRelationship is a specialization of ViewDefinitionRelationship
            that shows tracing from ( TracingRelationship) one requirement to another (
            TracingRelationship). A requirement on the performance of a catalytic converter in a car
            may be traced from a more general emissions requirement. A requirement may trace to many
            other requirements and vice versa - this is achieved by creating multiple instances of
            the tracing relationship entity. NOTE: The inherited " ViewDefinitionRelationship" and "
            ViewDefinitionRelationship" attributes have been renamed for purposes of clarity. NOTE:
            Properties may be attached to tracing relationships. This is intended to deal with "user
            defined" attributes which are common on tracing relationships in requirements tools.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RequirementViewDefinitionRelationship">
            <xsd:sequence>
               <!--embedded assignments-->
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TypeOfPerson" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TypeOfPerson is a type of person. Class 3 welder Truck driver
            Electronics engineer Mechanical technician Helicopter pilot </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TypeOfPerson
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the TypeOfPerson.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute has to entity-->
               <xsd:element name="Has" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="TypeOfPersonDefinition" type="cmn:Reference"
                           minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservedEnvironmentAssignment"
                  type="ObservedEnvironmentAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequiredResourceAssignment" type="RequiredResourceAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeSubjectAssignment" type="SchemeSubjectAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SchemeVersionAssignment" type="SchemeVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TypeOfPersonAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TypeOfPersonAssignment is the association of a TypeOfPerson in a role
            with an activity or product data. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedTypeOfPerson to entity-->
               <xsd:element name="AssignedTypeOfPerson" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the TypeOfPerson that is to be assigned.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TypeOfPersonDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TypeOfPersonDefinition is the definition of a TypeOfPerson in terms of
            required properties or attributes. A junior mechanical design engineer could be
            specified to be either someone who has 3 years experience of working in a mechanical
            design department, or a degree in mechanical engineering. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the TypeOfPersonDefinition
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        TypeOfPersonDefinition. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this TypeOfPersonDefinition This TypeOfPersonDefinition is a
                        member of the referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="TypeOfPersonDefinitionRelationship"
                  type="TypeOfPersonDefinitionRelationship" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TypeOfPersonDefinitionRequiredAttributesRelationship"
                  type="TypeOfPersonDefinitionRequiredAttributesRelationship" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TypeOfPersonDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A TypeOfPersonDefinitionRelationship is a relationship between two
            definitions of a type of person (TypeOfPersonDefinition). A
            TypeOfPersonDefinitionRelationship is a specialization of a RelationshipObject that is a
            relationship between two instances of a type of person (TypeOfPersonDefinition).
            "alternate" and "superceded by" are examples of TypeOfPersonDefinitionRelationships.
            NOTE: The meaning of the relationship is determined by classification which is
            identified by the RelationshipObject property. The possible classifications are
            subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of TypeOfPersonDefinition that is a part
                        of the relationship. If one element of the relationship is dependent upon
                        the other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="TypeOfPersonDefinitionRequiredAttributesRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A TypeOfPersonDefinitionRequiredAttributesRelationship is a relationship
            between a TypeOfPersonDefinition and the attributes required to define that type of
            person. The type of person "van driver" is required to possess the qualification named
            "commercial driving license" or the experience level "3 years of driving more than
            10,000 miles per year". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedRequiredAttributes to entity-->
               <!--EXPRESS attribute requiredAttributes to SELECT-->
               <xsd:element name="RequiredAttributes" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the required attributes of a person. Must have a degree
                        Must have 10 years experience </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element name="ExperienceType" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                        <xsd:element name="QualificationType" type="cmn:Reference" minOccurs="1"
                           maxOccurs="1"/>
                     </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="UncertaintyQualifier" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An UncertaintyQualifier is a generalization of a StandardUncertainty or
            a QualitativeUncertainty. The uncertainty is defined in clause 2 of "The Guide to the
            Expression of Uncertainty in Measurement". </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        UncertaintyQualifier. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute measureName to entity-->
               <xsd:element name="MeasureName" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the STRING that serves to identify the
                        UncertaintyQualifier. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="LocalizedString" type="LocalizedString" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Validation" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Validation is a subjective assertion that an item is "fit for
            purpose". Evidence used in this validation is identified by the inverse attribute
            validatedBy. Validation is commonly understood to mean "Have we built the right
            system?". Validation is concerned with ensuring that the system will meet the customer’s
            objectives and expectations. Validation usually includes testing under normal usage
            conditions. NOTE: An item may pass validation even though some requirements fail
            verification. NOTE: It is assumed that meta data supporting the validation will be
            applied using assignment entities, such as identification assignment, person and
            organization assignment etc.. Every flight of every Space Shuttle has been a
            "Validation" flight to test the new design under actual conditions. No two shuttles have
            flown in the same configuration and many systems cannot be validated except under actual
            conditions. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Validation
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Validation.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Validation This Validation is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute validates to SELECT-->
               <xsd:element name="Validates" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> identifies the item which is been validated by this entity.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueFunction" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueFunction is a numerically defined function that describes the
            distribution function. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute functionElement to entity-->
               <xsd:element name="FunctionElement" minOccurs="1" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="FunctionValuePair" type="cmn:Reference" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueLimit" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueLimit is a specialization of NumericalValue that specifies a
            qualified numerical value representing either the lower limit or the upper limit of a
            particular quantifiable characteristic. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="NumericalValue">
            <xsd:sequence>
               <!--EXPRESS attribute qualifier to SELECT-->
               <xsd:element name="Qualifier" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> There shall exist exactly one PreDefinedTypeQualifier for
                        the ValueLimit. It shall be classified as 'minimum' or 'maximum'.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueList" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueList is a specialization of PropertyValue that is an ordered
            collection of PropertyValues. A PropertyValue may be composed of different values such
            as 'mass', 'speed', and 'age' which are all necessary in a given context. The ValueList
            collects all of them in a given order, such that each is identifiable by its index in
            the list. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence>
               <!--EXPRESS attribute values to entity-->
               <xsd:element name="Values" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the values. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueRange" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueRange is a specialization of ValueWithUnit that is a pair of
            numbers representing the range in which the value shall lie. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ValueWithUnit">
            <xsd:sequence>
               <!--EXPRESS attribute lowerLimit to base type-->
               <xsd:element name="LowerLimit" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the lower limit. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute upperLimit to base type-->
               <xsd:element name="UpperLimit" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the upper limit. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueSet" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueSet is a specialization of PropertyValue that is an unordered
            collection of PropertyValues. A PropertyValue may be composed of different values such
            as 'mass', 'speed', and 'age' which are all necessary in a given context. The ValueSet
            collects all of them in a given order, such that each is identifiable by its index in
            the list. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence>
               <!--EXPRESS attribute values to entity-->
               <xsd:element name="Values" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>the values. </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="PropertyValue" type="PropertyValue" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueWithTolerances" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ValueWithTolerances is a specialization of ValueWithUnit that
            specifies a range of values by specifying a single nominal value and two tolerances that
            are offsets from the single value. The range is defined to be the closed interval [item
            value + lower limit, item value + upper limit]. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ValueWithUnit">
            <xsd:sequence>
               <!--EXPRESS attribute tolerancedValue to base type-->
               <xsd:element name="TolerancedValue" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>specifies the single value that is the base value for
                        specifying the range. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute lowerLimit to base type-->
               <xsd:element name="LowerLimit" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the lower limit of the range. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute upperLimit to base type-->
               <xsd:element name="UpperLimit" type="xsd:double" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the upper limit of the range. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ValueWithUnit" abstract="true">
      <xsd:annotation>
         <xsd:documentation> A ValueWithUnit is a specialization of a PropertyValue and is an
            abstract generalization of instances that represents the specification of a physical
            quantity by its value and its unit. NOTE: Only non-abstract specializations of the
            ValueWithUnit can be instantiated. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="PropertyValue">
            <xsd:sequence>
               <!--EXPRESS attribute unit to entity-->
               <xsd:element name="Unit" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the ExternalUnit with which the physical quantity is
                        expressed. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute significantDigits to base type-->
               <xsd:element name="SignificantDigits" type="xsd:integer" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> specifies the number of decimal digits that are relevant
                        for the ValueWithUnit. If present, the numerical measure or range may be
                        specified using more digits than the significant digits but shall not be
                        specified using less digits. The value of this attribute need not be
                        specified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="Verification" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A Verification is an objective assertion of a claim that requirement is
            satisfied by a particular item represented in a RequirementSatisfiedBy has been
            verified. The evidence used in this verification is identified by the inverse attribute
            verifiedBy. Verification is commonly understood to mean "Have we built the system
            right?". Verification ensures that the specified requirements have been met.
            Verification uses the methods of Test, Analysis, Inspection, Demonstration, Similarity.
            NOTE: Just because an item is verified does not ensure that it meets all stakeholder
            needs or expectations, many of these are never specified are of an un-testable nature
            e.g. "the car should look sporty". NOTE: It is assumed that meta data supporting the
            verification will be applied using assignment entities, such as identification
            assignment, person and organization assignment etc.. A data type used to represent a
            vehicle's engine with a power output of 160BHP could be asserted to satisfy a
            requirement "the vehicle shall have a maximum power output of at least 150BHP". This
            assertion may be verified by analysis results on simulations of the engine. In this case
            the analysis results would be identified in the items collection of an evidence
            instance, possibly including the approval of the analysis. The evidence instance would
            identify that it is used to support the required verification. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the Verification
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the Verification.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this Verification This Verification is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute verifies to entity-->
               <xsd:element name="Verifies" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the claimed requirement satisfaction by a particular item
                        which is been verified by this entity. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="InformationUsageRightAssignment"
                  type="InformationUsageRightAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="VerificationRelationship" type="VerificationRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="VerificationRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A VerificationRelationship is an association between two verifications.
            NOTE: The meaning of the relationship is determined by classification which is
            identified by the RelationshipObject property. The possible classifications are
            subclasses of . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other verification in this relationship.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TimeIntervalAssignment" type="TimeIntervalAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ViewDefinitionContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation> An ViewDefinitionContext is the grouping of an application domain and a
            life cycle stage. It identifies a universe of discourse suitable for the description of
            products. NOTE: Requirements and vocabularies vary among the industrial activity fields.
            This entity intends to identify such a domain. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute applicationDomain to entity-->
               <xsd:element name="ApplicationDomain" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that identifies the application context that
                        bounds the universe of discourse. 'assembly study', 'digital mock-up',
                        'electrical design', 'mechanical design', 'preliminary design', 'process
                        planning' are examples of application domains If applicationDomain is an
                        empty string, the ViewDefinitionContext shall be considered as not specific
                        of any application domain. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the
                        ViewDefinitionContext.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute lifeCycleStage to entity-->
               <xsd:element name="LifeCycleStage" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the text that identifies a stage in the life cycle of a
                        product. 'design phase', 'production', 'recycling phase' are examples of
                        life cycle stages. If lifeCycleStage is an empty string, the
                        ViewDefinitionContext shall be considered as not specific of any life cycle
                        stage. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ViewDefinitionRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ViewDefinitionRelationship is an association between two instances of
            ProductViewDefinition. This association represents a relationship between the product
            versions, indirectly identified by the instances of ProductViewDefinition, relevant in
            the definition contexts of the related instances of ProductViewDefinition.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the ViewDefinitionRelationship
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of ProductViewDefinition that is part of
                        the relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityAssignment" type="ActivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="WorkOrderAssignment" type="WorkOrderAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionEvaluationAssignment"
                  type="ConditionEvaluationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ConditionAssignment" type="ConditionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="LocationAssignment" type="LocationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="WorkRequestAssignment" type="WorkRequestAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ViewDefinitionUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ViewDefinitionUsage is a specialization of ViewDefinitionRelationship
            that specifies a directed association between two instances of ProductViewDefinition.
            This association represents a relationship stating that, in the definition contexts of
            the related instances of ProductViewDefinition, it is considered that the related
            product is used in the context of the relating product. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="ViewDefinitionRelationship">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkOrder" abstract="false">
      <xsd:annotation>
         <xsd:documentation> A WorkOrder is an authoritative instrument which provides directions to
            achieve the specified results. A WorkOrder is the authorization for one or more Activity
            instances to be performed. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the WorkOrder </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the WorkOrder.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this WorkOrder This WorkOrder is a member of the referenced
                        class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute inResponseTo to entity-->
               <xsd:element name="InResponseTo" minOccurs="0" maxOccurs="1">
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="WorkRequest" type="cmn:Reference" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkOrderAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An WorkOrderAssignment is an association of a WorkOrder with the product
            or activity data that are subjects of this WorkOrder. In case a tyre on a car is flat, a
            WorkOrder may be created and associated with the instances that represent the tyre that
            is flat, the car and the spare wheel. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedWorkOrder to entity-->
               <xsd:element name="AssignedWorkOrder" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the WorkOrder for which a set of items is being identified.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkOutput" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A WorkOutput is a statement of output resulting from an activity or a
            task. The role of the work output is determined by classification. When applicable a
            work output may be classified as "Planned"; "Actual"; "By-product"; "Waste product".
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the WorkOutput
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the WorkOutput.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this WorkOutput This WorkOutput is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute quantity to entity-->
               <xsd:element name="Quantity" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the amount of output resulting from the associated activity
                        or task. The value of this attribute need not be specified.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="ValueWithUnit" type="ValueWithUnit" minOccurs="0"
                           maxOccurs="1"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute outputItem to SELECT-->
               <xsd:element name="OutputItem" type="cmn:Reference" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a reference to a detailed representation of the item that
                        is defined as the work output. It can refer to an actual as well as to a
                        type of item. The value of this attribute need not be specified. A work
                        output can be a product or a certificate. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CertificationAssignment" type="CertificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="SecurityClassificationAssignment"
                  type="SecurityClassificationAssignment" minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="WorkOutputRelationship" type="WorkOutputRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkOutputAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A WorkOutputAssignment is an association of a work output statement with
            the source that produces or delivers the output. The work output can be planned as well
            as actual. The role of the assignment is determined by classification.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedOutput to entity-->
               <xsd:element name="AssignedOutput" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the work output that is to be associated with one or more
                        activities or tasks that produce or deliver the output. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="EffectivityAssignment" type="EffectivityAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="TaskElementAssignment" type="TaskElementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodAssignment" type="TaskMethodAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="TaskMethodVersionAssignment" type="TaskMethodVersionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkOutputRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A WorkOutputRelationship is a relationship between two work output
            statements. The meaning of the relationship is determined by classification. A
            WorkOutputRelationship is classified as "realized by" . </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the other instance of WorkOutput that is a part of the
                        relationship. If one element of the relationship is dependent upon the
                        other, this attribute shall be the dependent one. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="AnalysisAssignment" type="AnalysisAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkRequest" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A WorkRequest is the solicitation for some work to be done. NOTE: These
            requests may not be acted upon depending on the authorization granted to the request or
            its associated WorkOrder. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="cmn:BaseRootObject">
            <xsd:sequence>
               <!--EXPRESS attribute id to entity-->
               <xsd:element name="Id" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of Identifiers for the WorkRequest
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="1"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute description to entity-->
               <xsd:element name="Description" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> a set of text based descriptions of the WorkRequest.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Descriptor" type="Descriptor" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute classifiedAs to entity-->
               <xsd:element name="ClassifiedAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to a class held externally to the exchange file
                        that classifies this WorkRequest This WorkRequest is a member of the
                        referenced class.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Classification" type="Classification" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute sameAs to entity-->
               <xsd:element name="SameAs" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>a reference to an ExternalOwlClass or an ExternalItem held
                        externally to the exchange file for which this is a
                        proxy.</xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Proxy" type="Proxy" minOccurs="0" maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--EXPRESS attribute versionId to entity-->
               <xsd:element name="VersionId" minOccurs="0" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the identification of the version of the WorkRequest.
                     </xsd:documentation>
                  </xsd:annotation>
                  <xsd:complexType>
                     <xsd:sequence>
                        <xsd:element name="Identifier" type="Identifier" minOccurs="0"
                           maxOccurs="unbounded"/>
                     </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="ActivityMethodAssignment" type="ActivityMethodAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="AssumptionAssignment" type="AssumptionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="CollectionAssignment" type="CollectionAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="ContractAssignment" type="ContractAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DateTimeAssignment" type="DateTimeAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="DocumentAssignment" type="DocumentAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="JustificationAssignment" type="JustificationAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="ObservationAssignment" type="ObservationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="OrganizationOrPersonInOrganizationAssignment"
                  type="OrganizationOrPersonInOrganizationAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="RequirementAssignment" type="RequirementAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateAssignment" type="StateAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <xsd:element name="StateDefinitionAssignment" type="StateDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="WorkRequestRelationship" type="WorkRequestRelationship"
                  minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkRequestAssignment" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An WorkRequestAssignment is an association of a WorkRequest with the
            product or activity data that are subjects of this WorkRequest. In case a tyre on a car
            is flat, a WorkRequest may be created and associated with the instances that represent
            the tyre that is flat, the car and the spare wheel. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="AssignmentObject">
            <xsd:sequence>
               <!--EXPRESS attribute assignedWorkRequest to entity-->
               <xsd:element name="AssignedWorkRequest" type="cmn:Reference" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the WorkRequest for which a set of items is being
                        identified. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--EXPRESS attribute assignedTo to SELECT-->
               <!--embedded assignments-->
               <xsd:element name="ApprovalAssignment" type="ApprovalAssignment" minOccurs="0"
                  maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="WorkRequestRelationship" abstract="false">
      <xsd:annotation>
         <xsd:documentation> AWorkRequestRelationship is a specialization of an RelationshipObject
            that is a relationship between two instances of WorkRequest. NOTE: The meaning of the
            relationship is determined by classification which is identified by the
            RelationshipObject property. The possible classifications are subclasses of .
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="RelationshipObject">
            <xsd:sequence>
               <!--EXPRESS attribute relating to entity-->
               <!--EXPRESS attribute related to entity-->
               <xsd:element name="Related" type="cmn:Reference" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation> the second instance of WorkRequest that is part of the
                        relationship. NOTE: NOTE: If one WorkRequest in the relationship is
                        dependent upon the other, this attribute shall be the dependent one.
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <!--embedded assignments-->
               <xsd:element name="PropertyDefinitionAssignment" type="PropertyDefinitionAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <xsd:element name="PropertyValueAssignment" type="PropertyValueAssignment"
                  minOccurs="0" maxOccurs="unbounded"/>
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="XorStateCauseEffectDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>An XorStateCauseEffectDefinition is a specialization of
            StateCauseEffectDefinition. It relates one of the single or many causing state
            definition(s) and one effect StateDefinition, whereby any and only one of the causing
            state definitions exists prior to the single effect to take place. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="StateCauseEffectDefinition">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneBreakdown" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneBreakdown is a specialization of Breakdown that identifies a
            partitioning of a product into a set of related zonal elements so as to form explicit,
            parent-child views that comprise the product elements. The parent-child view is
            represented by ZoneElementUsage instances relating the zonal elements in the breakdown
            which are represented by ZoneElements. A zonal breakdown provides a means of identifying
            the decomposition of an aircraft in terms of spaces or high-level conceptual parts such
            as 'wing' - which might further decompose into lower-level zones such as 'inner-wing',
            and 'outer wing'. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="Breakdown">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneBreakdownContext" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneBreakdownContext is a specialization of BreakdownContext that is a
            membership relationship between a ZoneElement and a ZoneBreakdown of which the zonal
            element is a member. A 'fire-check zone' might be a member of the zonal breakdown of a
            building. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownContext">
            <xsd:sequence><!--EXPRESS attribute breakdown to entity--><!--EXPRESS attribute breakdownElement to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneBreakdownVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneBreakdownVersion is a specialization of BreakdownVersion that
            identifies a version of a ZoneBreakdown An architect modifies the current fire-check
            zone breakdown for an building on the basis of reports from a buildings inspector.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownVersion">
            <xsd:sequence><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneElement" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneElement is a specialization of BreakdownElement that identifies
            the elements in one or more ZoneBreakdown instances. 'Empennage', 'Right vertical
            stabilizer and rudder' and 'Lower rudder' are all elements in a zonal breakdown of an
            aircraft. </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElement">
            <xsd:sequence><!--EXPRESS attribute versions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneElementDefinition" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneElementDefinition is a specialization of
            BreakdownElementDefinition that identifies a view of a version ( ZoneElementVersion) of
            a ZoneElement. For an aircraft, an element 'Right vertical stabilizer tip' is in a zonal
            breakdown that an engineer uses for reliability-centred maintenance analysis.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementDefinition">
            <xsd:sequence>
               <!--embedded assignments-->
               <!--embedded non-standard assignments-->
               <!--embedded relationships-->
               <xsd:element name="ZoneElementUsage" type="ZoneElementUsage" minOccurs="0"
                  maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneElementUsage" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneElementUsage is a specialization of BreakdownElementUsage that is
            a relationship between a parent and child ZoneElement. In a zonal breakdown, the 'wing'
            (parent) might include (as children) an 'inner wing' and an 'outer wing'.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementUsage">
            <xsd:sequence><!--EXPRESS attribute relating to entity--><!--EXPRESS attribute related to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
   <xsd:complexType name="ZoneElementVersion" abstract="false">
      <xsd:annotation>
         <xsd:documentation>A ZoneElementVersion is a specialization of BreakdownElementVersion that
            identifies a version of a ZoneElement. An engineer defines an inspection task on a
            breakdown element 'Upper rudder' that is part of a zonal breakdown of an aircraft. The
            engineer identifies the corresponding view of the breakdown element.
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="BreakdownElementVersion">
            <xsd:sequence><!--EXPRESS attribute viewDefinitions to entity--><!--embedded assignments--><!--embedded non-standard assignments--><!--embedded relationships--></xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>
</xsd:schema>
