<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="menuContributionFile" type="menuContributionFile"/> <xs:element name="menuTemplate" type="menuTemplateFile"/> <xs:complexType name="menuTemplateFile"> <xs:sequence> <xs:element name="contribute" type="abstractMenuContribution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="abstractMenuContribution" abstract="true"> <xs:sequence /> <xs:attribute name="id" type="xs:string" /> <xs:attribute name="suppressErrors" type="xs:string" /> </xs:complexType> <xs:complexType name="menuContributionFile"> <xs:sequence> <xs:element name="substitute" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="include" type="include" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="include"> <xs:sequence> <xs:element name="substitute" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="remove" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="visibleOnActionSet" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="fileName" type="xs:string" use="required"/> <xs:attribute name="installTo" type="xs:string"/> <xs:attribute name="subMenu" type="xs:string"/> </xs:complexType> <xs:complexType name="variableSubstitution"> <xs:sequence/> <xs:attribute name="key" type="xs:string" use="required"/> <xs:attribute name="value" type="xs:string" use="required"/> </xs:complexType> <xs:complexType name="bundleItem"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="dataURI" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="substitute" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="timeQuery" type="xs:boolean"/> <xs:attribute name="menuText" type="xs:string"/> <xs:attribute name="file" type="xs:string"/> <xs:attribute name="productInterval" type="xs:int"/> <xs:attribute name="useReferenceTime" type="xs:boolean"/> <xs:attribute name="productOffset" type="xs:int"/> <xs:attribute name="editorType" type="xs:string"/> <xs:attribute name="fullBundleLoad" type="xs:boolean"/> <xs:attribute name="commandId" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="satBundleItem"> <xs:complexContent> <xs:extension base="bundleItem"> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="toolBarItem"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="contribute" type="abstractMenuContribution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="toolItemName" type="xs:string" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="menuItem"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:attribute name="menuText" type="xs:string"/> <xs:attribute name="textLookup" type="xs:string"/> <xs:attribute name="key" type="xs:string"/> <xs:attribute name="dataType" type="xs:string"/> <xs:attribute name="indentText" type="xs:boolean"/> <xs:attribute name="mapScale" type="xs:string"/> <xs:attribute name="displayType" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="vertCoordMenuItem"> <xs:complexContent> <xs:extension base="menuItem"> <xs:attribute name="heightScale" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="titleItem"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:attribute name="titleText" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="titleImgItem"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:attribute name="titleText" type="xs:string"/> <xs:attribute name="displayImage" type="xs:boolean"/> <xs:attribute name="displayDashes" type="xs:boolean"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="command"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="parameter" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="menuText" type="xs:string"/> <xs:attribute name="commandId" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="subMenu"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="contribute" type="abstractMenuContribution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="menuText" type="xs:string" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="toolbarSubMenu"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="contribute" type="abstractMenuContribution" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="menuText" type="xs:string" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="separator"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence/> <xs:attribute name="visible" type="xs:boolean"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="subinclude"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="substitute" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> <xs:attribute name="fileName" type="xs:string" use="required" /> <xs:attribute name="subMenu" type="xs:string"></xs:attribute> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="placeholder"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence/> <xs:attribute name="menuText" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="dynamicMenu"> <xs:complexContent> <xs:extension base="abstractMenuContribution"> <xs:sequence> <xs:element name="parameter" type="variableSubstitution" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> <xs:attribute name="menuText" type="xs:string"/> <xs:attribute name="classId" type="xs:string"/> </xs:extension> </xs:complexContent> </xs:complexType> </xs:schema>