<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:nice="http://www.wipo.int/nicepub/NICE" targetNamespace="http://www.wipo.int/nicepub/NICE" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:include schemaLocation="NICE_schema_types_V1-0.xsd"/>
  <xs:complexType name="ModificationsIndicationType">
    <xs:sequence>
      <xs:element name="Label" type="nice:ModificationTextType"/>
      <xs:sequence minOccurs="0">
        <xs:element name="SortExpression">
          <xs:complexType>
            <xs:complexContent>
              <xs:extension base="nice:ModificationTextType">
                <xs:attribute name="modification" type="nice:TagModificationType"/>
              </xs:extension>
            </xs:complexContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="AlternateSortExpression" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:complexContent>
              <xs:extension base="nice:ModificationTextType">
                <xs:attribute name="modification" type="nice:TagModificationType"/>
              </xs:extension>
            </xs:complexContent>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ModificationsParagraphStructureType">
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
      <xs:element name="P" maxOccurs="unbounded">
        <xs:complexType mixed="true">
          <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="Emphasis" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="nice:ExternalLink" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="nice:NiceLink" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="NewText" type="nice:ParagraphStructureContentsType" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="DeletedText" type="nice:ParagraphStructureContentsType" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:attribute name="modification" type="nice:TagModificationType"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ModificationsIllustrationType">
    <xs:attribute name="filename" type="xs:string" use="required"/>
    <xs:attribute name="legend" use="required"/>
    <xs:attribute name="modification" type="nice:TagModificationType"/>
  </xs:complexType>
  <xs:complexType name="ModificationGoodOrServiceType">
    <xs:sequence>
      <xs:element name="Definition" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DefinitionText" type="nice:ModificationsParagraphStructureType"/>
            <xs:element name="DefinitionIllustrations" minOccurs="0">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Illustration" type="nice:ModificationsIllustrationType" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ClassificationCriteria" type="nice:ModificationTextType" minOccurs="0"/>
      <xs:element name="RelatedExamples" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="RelatedItem" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Label" type="nice:ModificationTextType"/>
                  <xs:element name="Comment" type="nice:ModificationTextType" minOccurs="0"/>
                  <xs:element name="Illustration" type="nice:ModificationsIllustrationType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
                <xs:attribute name="class" type="xs:positiveInteger" use="required"/>
                <xs:attribute name="basicNumber" type="nice:BasicNumberType"/>
                <xs:attribute name="modification" type="nice:TagModificationType"/>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="basicNumber" type="nice:BasicNumberType" use="required"/>
    <xs:attribute name="modification" type="nice:TagModificationType"/>
  </xs:complexType>
  <xs:complexType name="ModificationsGosRemarksType">
    <xs:sequence>
      <xs:element name="Introduction" type="nice:ModificationTextType"/>
      <xs:element name="Remark" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="nice:ModificationTextWithLinksType">
              <xs:attribute name="modification" type="nice:TagModificationType" use="optional"/>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ModificationsIncludeExcludeType" mixed="true">
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
      <xs:element name="OrderedList" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Introduction" type="nice:ModificationTextType" minOccurs="0"/>
            <xs:element name="ListItem" type="nice:ModificationTextWithLinksType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="nice:NiceLink" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="NewText" type="nice:TextWithLinksType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="DeletedText" type="nice:TextWithLinksType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="modification" type="nice:TagModificationType"/>
  </xs:complexType>
  <xs:element name="Modifications">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="GeneralRemarks">
          <xs:complexType>
            <xs:sequence minOccurs="0">
              <xs:element name="Introduction" type="nice:ModificationTextType"/>
              <xs:element name="RemarksAboutGoods" type="nice:ModificationsGosRemarksType"/>
              <xs:element name="RemarksAboutServices" type="nice:ModificationsGosRemarksType"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="ClassHeadingsExplanatoryNotes">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Class" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="ClassHeading" minOccurs="0">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="HeadingItem" minOccurs="0" maxOccurs="unbounded">
                            <xs:complexType>
                              <xs:complexContent>
                                <xs:extension base="nice:ModificationTextType">
                                  <xs:attribute name="modification" type="nice:TagModificationType"/>
                                </xs:extension>
                              </xs:complexContent>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="ExplanatoryNote" minOccurs="0">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="Introduction" type="nice:ModificationTextType"/>
                          <xs:element name="IncludesInParticular">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Include" type="nice:ModificationsIncludeExcludeType" minOccurs="0" maxOccurs="unbounded"/>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="ExcludesInParticular">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Exclude" type="nice:ModificationsIncludeExcludeType" minOccurs="0" maxOccurs="unbounded"/>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="classNumber" type="xs:positiveInteger" use="required"/>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="HierarchyGroupTitles">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="HierarchyGroup" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:complexContent>
                    <xs:extension base="nice:ModificationTextType">
                      <xs:attribute name="groupNumber" type="nice:DottedGroupType" use="required"/>
                    </xs:extension>
                  </xs:complexContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="GoodsAndServicesIndications">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="GoodOrService" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Indication" type="nice:ModificationsIndicationType"/>
                    <xs:element name="SynonymIndication" type="nice:ModificationsIndicationType" minOccurs="0" maxOccurs="unbounded"/>
                  </xs:sequence>
                  <xs:attribute name="basicNumber" type="nice:BasicNumberType" use="required"/>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="ClassAnalyses">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ClassAnalysis" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:complexContent>
                    <xs:extension base="nice:ModificationsParagraphStructureType">
                      <xs:attribute name="classNumber" type="xs:positiveInteger" use="required"/>
                      <xs:attribute name="modification" type="nice:TagModificationType"/>
                    </xs:extension>
                  </xs:complexContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="HierarchyGroupAnalyses">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="HierarchyGroupAnalysis" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:complexContent>
                    <xs:extension base="nice:ModificationsParagraphStructureType">
                      <xs:attribute name="groupNumber" type="nice:DottedGroupType" use="required"/>
                      <xs:attribute name="modification" type="nice:TagModificationType"/>
                    </xs:extension>
                  </xs:complexContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="GoodsAndServicesDefinitions">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="GoodOrService" type="nice:ModificationGoodOrServiceType" minOccurs="0" maxOccurs="unbounded"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="nice:LangInForce"/>
    </xs:complexType>
  </xs:element>
</xs:schema>
