Ribbon core schema
The following is the schema definition for the ribbon core portion of an import/export customization file. It is included from the Customization solutions file schema. RibbonCore.xsd
schema includes RibbonTypes.xsd
and RibbonWss.xsd
and you can find schema in the Schemas\9.0.0.2090\RibbonCore.xsd
folder when you download the Schemas zip file.
Download the Schemas.
For more information, see Package and distribute extensions with solutions.
Ribbon Core Schema
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="CrmRibbonCore" xmlns:xs="https://www.w3.org/2001/XMLSchema">
<xs:include schemaLocation="RibbonTypes.xsd" />
<xs:include schemaLocation="RibbonWSS.xsd" />
<!-- Root Element-->
<xs:element name="RibbonDiffXml" type="RibbonGlobalDiffXmlType" />
<xs:element name="CommandDefinitions" type="CommandDefinitionsType" />
<xs:element name="RuleDefinitions" type="RuleDefinitionsGlobalType" />
<xs:element name="Templates" type="TemplatesType" />
<xs:element name="CustomActions" type="CustomActionsType" />
<xs:element name="UI" type="CommandUIType">
</xs:element>
<!-- Element Types -->
<xs:complexType name="RibbonEntityDiffXmlType">
<xs:choice minOccurs="1" maxOccurs="1">
<xs:sequence>
<xs:element name="CustomActions" minOccurs="0" maxOccurs="1" type="CustomActionsType" />
<xs:element name="Templates" type="TemplatesType" minOccurs="0" maxOccurs="1" />
<xs:element name="CommandDefinitions" minOccurs="0" maxOccurs="1" type="CommandDefinitionsType" />
<xs:element name="RuleDefinitions" minOccurs="0" maxOccurs="1" type="RuleDefinitionsEntityType" />
<xs:element name="LocLabels" minOccurs="0" maxOccurs="1" type="RibbonLocLabelsType" />
</xs:sequence>
<xs:sequence>
<xs:element name="RibbonNotSupported" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:choice>
</xs:complexType>
<xs:complexType name="RibbonGlobalDiffXmlType">
<xs:sequence>
<xs:element name="CustomActions" minOccurs="0" maxOccurs="1" type="CustomActionsType" />
<xs:element name="Templates" type="TemplatesType" minOccurs="0" maxOccurs="1" />
<xs:element name="CommandDefinitions" minOccurs="0" maxOccurs="1" type="CommandDefinitionsType" />
<xs:element name="RuleDefinitions" minOccurs="0" maxOccurs="1" type="RuleDefinitionsGlobalType" />
<xs:element name="LocLabels" minOccurs="0" maxOccurs="1" type="RibbonLocLabelsType" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="CustomActionsType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="CustomAction" type="CustomActionType" />
<xs:element name="HideCustomAction" type="HideCustomActionType" />
</xs:choice>
</xs:complexType>
<xs:complexType name="CustomActionType">
<xs:sequence>
<xs:element name="CommandUIDefinition" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:choice>
<xs:element name="Button" type="ButtonType" />
<xs:element name="CheckBox" type="CheckBoxType" />
<xs:element name="ComboBox" type="ComboBoxType" />
<xs:element name="ColorPicker" type="ColorPickerType" />
<xs:element name="ContextualGroup" type="ContextualGroupType" />
<!-- <xs:element name="ContextualTabs" type="ContextualTabsType" /> -->
<xs:element name="Controls" type="ControlsType" />
<xs:element name="DropDown" type="DropDownType" />
<xs:element name="FlyoutAnchor" type="FlyoutAnchorType" />
<xs:element name="Gallery" type="GalleryType" />
<xs:element name="GalleryButton" type="GalleryButtonType" />
<xs:element name="GroupTemplate" type="GroupTemplateType" />
<xs:element name="Group" type="GroupType" />
<xs:element name="Groups" type="GroupsType" />
<xs:element name="InsertTable" type="InsertTableType" />
<!-- <xs:element name="Jewel" type="JewelType" /> -->
<xs:element name="Label" type="LabelType" />
<xs:element name="MRUSplitButton" type="MRUSplitButtonType" />
<xs:element name="MaxSize" type="MaxSizeType" />
<xs:element name="Menu" type="MenuType" />
<xs:element name="MenuSection" type="MenuSectionType" />
<!-- <xs:element name="QAT" type="QATType" /> -->
<!-- <xs:element name="Ribbon" type="RibbonType" /> -->
<xs:element name="Scale" type="ScaleType" />
<xs:element name="Scaling" type="ScalingType" />
<xs:element name="Spinner" type="SpinnerType" />
<xs:element name="SplitButton" type="SplitButtonType" />
<xs:element name="Tab" type="TabType" />
<!-- <xs:element name="Tabs" type="TabsType" /> -->
<xs:element name="TextBox" type="TextBoxType" />
<xs:element name="ToggleButton" type="ToggleButtonType" />
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:string" />
<xs:attribute name="Location" type="xs:string" />
<xs:attribute name="Sequence" type="xs:int" />
<xs:attribute name="Title" type="xs:string" />
</xs:complexType>
<xs:complexType name="HideCustomActionType">
<xs:attribute name="HideActionId" type="xs:string" />
<xs:attribute name="Location" type="xs:string" />
<xs:attribute name="Sequence" type="xs:int" />
<xs:attribute name="Title" type="xs:string" />
</xs:complexType>
</xs:schema>
See also
Customize commands and the ribbon
Ribbon core schema
Ribbon types schema
Ribbon WSS schema
Customization solutions file schema