OEMInput file contents
An OEMInput.xml file contains the required and optional elements used to define a mobile image. The OS uses this file to determine the applications processor, build type, UI languages, default region format, resolution, and other properties to include in the image that will be generated.
This topic provides a full listing of the XML schema for the file.
Required elements in the OEMInput file
The following table describes the required elements in the OEMInput file.
Element | Description |
---|---|
OEMInput |
The root element for the OEMInput file. |
Description |
A string that describes the image. OEMs should add a description that is particular to the device the image is built for. |
SOC |
A string that identifies the SoC used on the device. The following values are currently supported:
Applications processorSupported SOC values
QC8974
QC8x26
QC8960
Important
The 8960 SOC options must only be used for images that are used to create updates for Windows 10 Mobile. For more information see Update.
|
Device |
A string that identifies the device model the image is being built for. Use this setting to include packages marked with the corresponding Device attribute of the DeviceSpecificPackages and the OEMDevicePlatformPackages elements in the feature manifest file. |
ReleaseType |
A string that indicates the release type of the image. Use this setting to include packages marked with the corresponding ReleaseType attribute value of a ReleasePackages element in the feature manifest file. The following values are supported:
|
BuildType |
A string that specifies whether to use checked build or free packages when creating the image. To generate a checked build with debug code, specify chk. To generate a free build without debug code, specify fre. |
SupportedLanguages |
Contains the following child elements that specify the language support in the generated image:
|
BootUILanguage |
A string that specifies the language code for the default display language to include in the image. |
BootLocale |
A string that specifies the language code for the default region format for the image. |
Resolutions |
Contains one Resolution element. The Resolution element contains a string that represents a display resolution supported by the image. The following values are supported: 480x800, 540x960, 720x1280, 768x1280, and 1080x1920. The build will include the corresponding resolution packages in the image for the specified resolution. Note that some resolutions are supported only with certain applications processors. |
Optional elements in the OEMInput file
The following table describes the optional elements that OEMs can include in the OEMInput file.
Element | Description |
---|---|
SV |
A string that identifies the manufacturer of the SoC used on the device. Use this setting to include packages marked with the corresponding SVPackages element in the feature manifest file. |
Product |
A string that specifies what OS variant to build. Specify the value Manufacturing OS to build an MMOS (Microsoft Manufacturing OS) image, which includes the minimal set of OS packages required by MMOS. To build a full OS image, omit this element. For more information about building an MMOS image, see MMOS image definition. |
FormatDPP |
A string that indicates whether to include an empty formatted device provisioning partition (DPP) in the image. Specify the value true to generate an image that includes an empty formatted DPP. Specify the value false or omit this element to prevent the DPP from being overwritten. |
ExcludePrereleaseFeatures |
A string that indicates if features considered to be prerelease are excluded from the build. Specify the value true to generate an image that excludes the prerelease features, specify false to include them. Builds that are created with ExcludePrereleaseFeatures set to true, may be referred to as "limited" builds. If this entry is not included in the OEMInput file, the prerelease features will be included in the image. When this option is set to true some replacement features may be present in the image. If there are no replacement features configured, then they will not be present in the build. |
Features |
Contains one or more child elements that specify the names of optional features to reference when building the image. Each feature corresponds to one or more packages that will be included in the image. In order to use a feature, the feature must be defined in a feature manifest that is listed under the AdditionalFMs element. For more information about features and feature manifests, see Building a phone image using ImgGen.cmd and Feature manifest file contents. The Features element contains one or more of the following child elements:
|
AdditionalFMs |
Contains one or more AdditionalFM elements. Each AdditionalFM element contains a string value that specifies the full path of a feature manifest file to reference when building the image. Feature manifests define the set of packages that are automatically included in certain types of images, and they also define feature names that can be referenced under the Features element to include additional packages in the image. For more information about feature manifest files, see Feature manifest file contents. |
PackageFiles |
Contains a set of PackageFile elements that specify additional packages to include in the image.
Important
The PackageFiles element can only be used in pre-retail images such as Test and Health images. It is only intended to be used in scenarios you need to quickly add an ad-hoc package to a pre-retail image. In retail images, all packages must be referenced using a feature that is listed under the Features element or listed in a feature manifest that is referenced under the AdditionalFMs element. For more information about features and feature manifests, see Building a phone image using ImgGen.cmd and Feature manifest file contents. Each PackageFile element contains a text value that specifies the path and name of a single package. If no additional packages are being added to the image, the PackageFiles element must be omitted from the file. The packages can be in any location on the development computer. An environment variable can be used in the path to each package in the PackageFile element. |
XML schema for the OEMInput file
The OEMInput file is validated against the following XML schema. You can use this schema to validate the OEMInput XML files that you create. To do this in Visual Studio, first save this in a file with an XSD extension. In Visual Studio select XML > Schemas and select the file that you created. Any deviations in your XML from the schema will be highlighted. Hover over the highlighted items to see additional information.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema targetNamespace="https://schemas.microsoft.com/embedded/2004/10/ImageUpdate"
elementFormDefault="qualified"
xmlns="https://schemas.microsoft.com/embedded/2004/10/ImageUpdate"
xmlns:mstns="https://schemas.microsoft.com/embedded/2004/10/ImageUpdate"
xmlns:xs="https://www.w3.org/2001/XMLSchema">
<xs:element name="OEMInput">
<xs:complexType>
<xs:all>
<xs:element name="Product" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="Description" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="SV" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="SOC" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Device" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ReleaseType" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Test"/>
<xs:enumeration value="Production"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BuildType" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="fre"/>
<xs:enumeration value="chk"/>
<xs:enumeration value="%BUILDTYPE%"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FormatDPP" minOccurs="0" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ExcludePrereleaseFeatures" minOccurs="0" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OEMDevicePlatform" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="SupportedLanguages" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:all>
<xs:element name="UserInterface" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Language" type="xs:string"
minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Keyboard" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Language" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Speech" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Language" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="BootUILanguage" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="BootLocale" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Resolutions" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Resolution" type="xs:string" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Features" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Microsoft" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Feature" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OEM" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Feature" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AdditionalFMs" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="AdditionalFM" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-This element is only for use with Windows 8 Phone device update images -->
<xs:element name="UserStoreMapData" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="SourceDir" type="xs:string" />
<xs:attribute name="UserStoreDir" type="xs:string" />
</xs:complexType>
</xs:element>
<xs:element name="PackageFiles" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="PackageFile" type="xs:string"
minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>
Related topics
Building an image using ImgGen.cmd