From Code to Community: Sponsoring The Perl and Raku Conference 2025 Learn more

<?xml version="1.0" encoding="UTF-8"?>
<!-- CXF version 3.0.018 -->
<!-- edited with XMLSpy v2009 sp1 (http://www.altova.com) by Robert F Willis (x-rite) -->
<!--W3C Schema generated by XMLSpy v2009 sp1 (http://www.altova.com)-->
<xs:schema xmlns:cc="http://colorexchangeformat.com/CxF3-core" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://colorexchangeformat.com/CxF3-core" elementFormDefault="qualified">
<xs:element name="CxF">
<xs:annotation>
<xs:documentation>Root element of CXF</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:FileInformation" minOccurs="0"/>
<xs:element ref="cc:Resources" minOccurs="0"/>
<xs:element ref="cc:CustomResources" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="FileInformation">
<xs:annotation>
<xs:documentation>Optional header section containing CXF File Information</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Creator" type="xs:string" minOccurs="0"/>
<xs:element ref="cc:CreationDate" minOccurs="0">
<xs:annotation>
<xs:documentation>creation date of object, specified as universal time format with or without time zone information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element name="Comment" type="xs:string" minOccurs="0"/>
<xs:element ref="cc:Tag" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>A named tag/value pair, generally used to hold custom meta-data about an object.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Resources">
<xs:annotation>
<xs:documentation>CXF element containng all core resources</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:ObjectCollection" minOccurs="0"/>
<xs:element ref="cc:ColorSpecificationCollection" minOccurs="0">
<xs:annotation>
<xs:documentation>Collection of all colorspace specifications referenced by the colorspace elements in the objects.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:ProfileCollection" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:unique name="ObjectId">
<xs:selector xpath=".//cc:Object"/>
<xs:field xpath="@Id"/>
</xs:unique>
<xs:unique name="SpecId">
<xs:selector xpath=".//cc:ColorSpecification"/>
<xs:field xpath="@Id"/>
</xs:unique>
<xs:unique name="ProfileId">
<xs:selector xpath=".//cc:Profile"/>
<xs:field xpath="@Id"/>
</xs:unique>
<xs:keyref name="ColorSpecificationRef" refer="cc:SpecId">
<xs:selector xpath=".//cc:*"/>
<xs:field xpath="@ColorSpecification"/>
</xs:keyref>
<xs:keyref name="ProfileSpecificationRef" refer="cc:ProfileId">
<xs:selector xpath=".//cc:*"/>
<xs:field xpath="@ProfileSpecification"/>
</xs:keyref>
<xs:keyref name="StandardReference" refer="cc:ObjectId">
<xs:selector xpath=".//cc:*"/>
<xs:field xpath="@StandardRef"/>
</xs:keyref>
</xs:element>
<xs:element name="CustomResources">
<xs:annotation>
<xs:documentation>CXF element containing any custom resource namespaces</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute processContents="lax"/>
</xs:complexType>
</xs:element>
<xs:element name="CreationDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>creation date of object, specified as universal time format with time zone.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:simpleType name="EAstmTableType">
<xs:annotation>
<xs:documentation>Enumeration of ASTM E308 tables used to convert spectral data into CIE color space.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="E308_Table5"/>
<xs:enumeration value="E308_Table6"/>
<xs:enumeration value="E308_1nm"/>
<xs:enumeration value="unknown"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ESphereType">
<xs:annotation>
<xs:documentation>Enumeration of sphere data types, such as Included, Excluded. For Transmittance measurements with a sphere this value should be Diffuse when using a diffuse white as the reference material.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Specular_Included"/>
<xs:enumeration value="Specular_Excluded"/>
<xs:enumeration value="Diffuse"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ELuminanceUnits">
<xs:annotation>
<xs:documentation>Enumeration of luminance units for used for certain color values, (normalized, fL=Foot-Lambert, cd/ft2f=Candela/sq.ft, cd/m2=Candela/meter2). Generally "normalized" for values based on reflectance data and "cd/m2" for emissive based values.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="normalized"/>
<xs:enumeration value="fL"/>
<xs:enumeration value="cd/ft2"/>
<xs:enumeration value="cd/m2"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EDensityFilterType">
<xs:annotation>
<xs:documentation>Enumeration of various density filters, such as Red, Green, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Visual"/>
<xs:enumeration value="Cyan"/>
<xs:enumeration value="Magenta"/>
<xs:enumeration value="Yellow"/>
<xs:enumeration value="Black"/>
<xs:enumeration value="Red"/>
<xs:enumeration value="Green"/>
<xs:enumeration value="Blue"/>
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EDensityStatusType">
<xs:annotation>
<xs:documentation>Enumeration of density status types, such as A, E, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="A"/>
<xs:enumeration value="E"/>
<xs:enumeration value="I"/>
<xs:enumeration value="M"/>
<xs:enumeration value="T"/>
<xs:enumeration value="SpectralX"/>
<xs:enumeration value="Spectral"/>
<xs:enumeration value="HiFi"/>
<xs:enumeration value="Hex"/>
<xs:enumeration value="Txp"/>
<xs:enumeration value="Ex"/>
<xs:enumeration value="DIN"/>
<xs:enumeration value="DIN-NB"/>
<xs:enumeration value="PD"/>
<xs:enumeration value="APD"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EIlluminantType">
<xs:annotation>
<xs:documentation>Enumeration of standard illuminants, such as A, D50, D65, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
<xs:enumeration value="C"/>
<xs:enumeration value="D50"/>
<xs:enumeration value="D55"/>
<xs:enumeration value="D60"/>
<xs:enumeration value="D65"/>
<xs:enumeration value="D75"/>
<xs:enumeration value="E"/>
<xs:enumeration value="F2"/>
<xs:enumeration value="F3"/>
<xs:enumeration value="F7"/>
<xs:enumeration value="F9"/>
<xs:enumeration value="F10"/>
<xs:enumeration value="F11"/>
<xs:enumeration value="F12"/>
<xs:enumeration value="9300"/>
<xs:enumeration value="TL84"/>
<xs:enumeration value="TL83"/>
<xs:enumeration value="UL30"/>
<xs:enumeration value="UL35"/>
<xs:enumeration value="UL50"/>
<xs:enumeration value="Custom"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ETargetType">
<xs:annotation>
<xs:documentation>Enumeration of standard target types, such as IT8.7/3, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="IT8.7/1"/>
<xs:enumeration value="IT8.7/2"/>
<xs:enumeration value="IT8.7/3"/>
<xs:enumeration value="IT8.7/4"/>
<xs:enumeration value="ECI2002"/>
<xs:enumeration value="Other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ESubstrateType">
<xs:annotation>
<xs:documentation>Enumeration of substrate types</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Film"/>
<xs:enumeration value="Leather"/>
<xs:enumeration value="Metal"/>
<xs:enumeration value="Paint"/>
<xs:enumeration value="Paper"/>
<xs:enumeration value="Plastic"/>
<xs:enumeration value="Textile"/>
<xs:enumeration value="Tile"/>
<xs:enumeration value="Vinyl"/>
<xs:enumeration value="Wood"/>
<xs:enumeration value="Other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EDeviceClassType">
<xs:annotation>
<xs:documentation>Enumeration of measurement device types, such as spot, scanning, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="DeviceClass_Spot"/>
<xs:enumeration value="DeviceClass_Scanning"/>
<xs:enumeration value="DeviceClass_Other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EObserverType">
<xs:annotation>
<xs:documentation>Enumeration of observer database based on field of view angle. Optional attributes should be specified if the Custom_CMF enumeration is used.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="2_Degree"/>
<xs:enumeration value="10_Degree"/>
<xs:enumeration value="Custom_CMF"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EFinishType">
<xs:annotation>
<xs:documentation>Enumeration of finishes, such as coated, matte, etc.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Coated"/>
<xs:enumeration value="Uncoated"/>
<xs:enumeration value="Matte"/>
<xs:enumeration value="Polished"/>
<xs:enumeration value="Glossy"/>
<xs:enumeration value="Satin"/>
<xs:enumeration value="Other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EFilterType">
<xs:annotation>
<xs:documentation>Enumeration of measurement device UV Filter (Filter_Excluded, Filter_D65, etc.)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Filter_None"/>
<xs:enumeration value="Filter_UVExcluded"/>
<xs:enumeration value="Filter_UVD65"/>
<xs:enumeration value="Filter_Partial"/>
<xs:enumeration value="Filter_Custom"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ESpectrumType">
<xs:annotation>
<xs:documentation>Enumeration of spectral measurement device types, such as reflectance, etc. Note that reflectance data values are scaled such that 100%=1.0. Direct (aka Regular) transmittance - The amount of light transmitted directly through a material in a parallel manner, ignoring light that is "diffused" within the material. Measurement in a typical sphere instrument is made by placing the material in the transmission compartment with the material mounted against the back wall (adjacent to the lens). Total transmittance - The total amount of light transmitted through a material including both direct and diffused light. Measurement in a typical sphere instrument is made by placing the material in the transmission compartment with the material mounted against the sphere opening (front wall) and away from the lens. When measuring materials that adhere to beers law (ex: true solutions), both methods yield equal results. However, when measuring materials that are more diffuse in nature (including suspensions and hazy materials), the amount of difference between the two methods is a characterization of the amount of haze or diffusion of the material. Many industrial methods exist which require both types of data in order to perform calculations with (ex: ASTM D1003, procedure B - Standard Test method for Haze and Luminous Transmittance or Transparent Plastics). When the CxF file contains NO spectral data (only colorimetric values such as RGB, XYZ, or CIELab), then use "Colorimetric_Reflectance, Colorimetric_Transmittance, or Colorimetric_Emissive) to indicate that no spectral data is provided.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Spectrum_Reflectance"/>
<xs:enumeration value="Spectrum_Transmittance"/>
<xs:enumeration value="Spectrum_TotalTransmittance"/>
<xs:enumeration value="Spectrum_Emissive"/>
<xs:enumeration value="Colorimetric_Reflectance"/>
<xs:enumeration value="Colorimetric_Transmittance"/>
<xs:enumeration value="Colorimetric_Emissive"/>
<xs:enumeration value="Spectrum_Custom"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EDeviceIlluminationType">
<xs:annotation>
<xs:documentation>Type of illumination that the sample was measured with. ISO13655 definitions (M0-M3) are preferred.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="M0_Incandescent"/>
<xs:enumeration value="M1_Daylight"/>
<xs:enumeration value="M2_UVExcluded"/>
<xs:enumeration value="M3_Polarized"/>
<xs:enumeration value="Flash"/>
<xs:enumeration value="LED"/>
<xs:enumeration value="Ambient"/>
<xs:enumeration value="Custom"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="reflectance_list">
<xs:annotation>
<xs:documentation>List of spectral data conforming to reflectance/transmittance restrictions (1.0=100%). Each value is seperated by white space, and the list of values must be in an even increment of 1,2,5,10, or 20 nm intervals. (For spectral data with uneven or unusual increments use the CustomSpectrum type)</xs:documentation>
</xs:annotation>
<xs:list itemType="cc:ReflectanceDataType"/>
</xs:simpleType>
<xs:simpleType name="emissive_list">
<xs:annotation>
<xs:documentation>List of spectral data conforming to emissive spectral restrictions. Each value is seperated by white space, and the list of values must be in an even increment of 1,2,5,10, or 20 nm intervals.(For spectral data with uneven or unusual increments use the CustomSpectrum type)</xs:documentation>
</xs:annotation>
<xs:list itemType="cc:EmissiveDataType"/>
</xs:simpleType>
<xs:simpleType name="StartWLType">
<xs:restriction base="xs:short">
<xs:minInclusive value="360"/>
<xs:maxInclusive value="400"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ReflectanceDataType">
<xs:annotation>
<xs:documentation>Floating point (double) data type for use in storing spectral response values. Values are limited to a nominal range of 0.0 (inclusive) to 1.0 (inclusive). Reflectance is scaled such that 100% equals 1.0. Note some allowance is made for values to exceed these nominal limits due to fluorescence.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:double">
<xs:maxExclusive value="3.0"/>
<xs:minExclusive value="-0.1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EmissiveDataType">
<xs:annotation>
<xs:documentation>Floating point (double) data type for use in storing spectral emissive values (also known as spectral radiance) Values are specified in units of watts per steradian per square meter per nm.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:double">
<xs:minExclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ESingleAngleConfigurationType">
<xs:annotation>
<xs:documentation>Enumeration type for single angle geometry. Can be either Annular or Uniplanar.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Annular"/>
<xs:enumeration value="Uniplanar"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EEmissiveModeType">
<xs:annotation>
<xs:documentation>Enumeration of emmissive modes.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="EmissiveMode_Diffuser"/>
<xs:enumeration value="EmissiveMode_Reflected"/>
<xs:enumeration value="EmissiveMode_Other"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceFilterType">
<xs:annotation>
<xs:documentation>Type of UV filter employed and an optional string attribute describing any custom filter, or describing % filter insertion if known.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="cc:EFilterType">
<xs:attribute name="FilterDescription" type="xs:string" use="optional"/>
<xs:attribute name="FilterPosition" type="xs:double" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="GeometryChoiceType">
<xs:annotation>
<xs:documentation>Specification of the device geometry, i.e. Sphere included/excluded or single angle specification.</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="EmissiveMode" type="cc:EEmissiveModeType">
<xs:annotation>
<xs:documentation>Specification of type of emissive measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SphereGeometry" type="cc:ESphereType">
<xs:annotation>
<xs:documentation>Specification of sphere included or excluded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SingleAngle" type="cc:SingleAngleType">
<xs:annotation>
<xs:documentation>Specification of illumination and measurement angle in degrees, and configuration. ex: 45.0.,0.0, annular</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UnknownGeometry">
<xs:annotation>
<xs:documentation>This option should not be used unless the geometry is truely not known and there is no way to accurately specify the geometry type. Most users will not be able to use data taged with an unknown geometry so be very careful using this tag. Note that you must specify a string describing this unknown gemetry.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MultiAngle" type="cc:MultiAngleType">
<xs:annotation>
<xs:documentation>A list of the multiangle BRDFangles and their notations (as a reference) that this specification applies to. This type of angle has three parts - Illuminination angle of the light source, Aspecular angle, and Azimuth angle.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:element name="SpectralPoint">
<xs:annotation>
<xs:documentation>Individual spectral data (with wavelength and value). WL specified in nanometers.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="WL" type="xs:double" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:complexType name="SpotColorType">
<xs:annotation>
<xs:documentation>Type used to represent a spot color's name and percentage.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Name">
<xs:annotation>
<xs:documentation>Name of spot color, required.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Percentage">
<xs:annotation>
<xs:documentation>Spot color percentage 0 (inclusive0 to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SingleAngleType">
<xs:annotation>
<xs:documentation>Geometry type where measurement is based on a single angle (example 45/0).</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="cc:SingleAngleConfiguration"/>
<xs:element name="IlluminationAngle" type="xs:double"/>
<xs:element name="MeasurementAngle" type="xs:double"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="MultiAngleType">
<xs:annotation>
<xs:documentation>Geometry type where multiple measurements are obtained at different illumination and viewing angles.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="unbounded">
<xs:element ref="cc:BRDFAngle" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="BRDFAngle">
<xs:annotation>
<xs:documentation>Notation and Angle values used for this portion of the BRDF multiangle data. Aspecular is the in-plane viewing angle, and Azimuth (optional) is specified if an out-of-plane illumination angle is used.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="IlluminationAngle" type="xs:double"/>
<xs:element name="Aspecular" type="xs:double"/>
<xs:element name="Azimuth" type="xs:double" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Notation" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="SingleAngleConfiguration" type="cc:ESingleAngleConfigurationType">
<xs:annotation>
<xs:documentation>Enumerated Type of single angle geometry. Can be either Annular or Uniplanar.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Width">
<xs:annotation>
<xs:documentation>Physical attribute. Width of object and units describing the value</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Units" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Length">
<xs:annotation>
<xs:documentation>Physical attribute. Length of object and units describing the value</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Units" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Thickness">
<xs:annotation>
<xs:documentation>Physical attribute. Thickness of object and units describing the value</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Units" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CustomAttributeValue">
<xs:annotation>
<xs:documentation>Custom Physical attribute. Value and Label describing the value and an optional method argument to describe method, procedure, or standard used to obtain the value.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Label" type="xs:string" use="required"/>
<xs:attribute name="Method" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="TargetType">
<xs:annotation>
<xs:documentation>Standard target types, such as IT8.7/3, etc</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:ETargetType">
<xs:attribute name="OtherType" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="SubstrateType">
<xs:annotation>
<xs:documentation>Enumeration of substrate type (wood, paper, textile, etc.).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:ESubstrateType">
<xs:attribute name="OtherType" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="FinishType">
<xs:annotation>
<xs:documentation>Enumeration of finish type (matte, polished, glossy, etc.).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:EFinishType">
<xs:attribute name="OtherType" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Quantity">
<xs:annotation>
<xs:documentation>Quantity and units used.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Units" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Gloss">
<xs:annotation>
<xs:documentation>Gloss value and an optional method argument to describe method, procedure, or standard used to obtain the value.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Method" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Opacity">
<xs:annotation>
<xs:documentation>Opacity value and an optional method argument to describe method, procedure, or standard used to obtain the value.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Method" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CustomAttributeString">
<xs:annotation>
<xs:documentation>Custom Physical string attribute. Value and Label describing the value and an optional method argument to describe method, procedure, or standard used to obtain the value.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Label" type="xs:string" use="required"/>
<xs:attribute name="Method" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="WavelengthRange">
<xs:annotation>
<xs:documentation>Wavelength attributes of a spectral list containing starting wavelength (in nm) and the wavelength increment between each list item.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="StartWL" type="cc:StartWLType" use="required"/>
<xs:attribute name="Increment" type="xs:short" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="TristimulusSpec">
<xs:annotation>
<xs:documentation>Portion of the colorspecification which contains information related to how colorimetric data was derived from spectral data (illuminant table used, observer table used, and what table or method was used).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element ref="cc:Illuminant"/>
<xs:element ref="cc:CustomIlluminant"/>
</xs:choice>
<xs:element ref="cc:Observer"/>
<xs:element ref="cc:Method"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TagCollection">
<xs:annotation>
<xs:documentation>A named collection of tag/value pairs. Multiple named collections may exist for an object allowing easier segregation of tags for different sources or purposes.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:Tag" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Tag">
<xs:annotation>
<xs:documentation>A named tag/value pair, generally use to hold custom meta-data about an object.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="Value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Substrate" type="xs:string">
<xs:annotation>
<xs:documentation>Enumerated type of substrate that the object represents.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SerialNumber">
<xs:annotation>
<xs:documentation>Serial number of the measuring spectrophotometer if specified.</xs:documentation>
</xs:annotation>
<xs:complexType/>
</xs:element>
<xs:complexType name="DEcmcType">
<xs:annotation>
<xs:documentation>Color Difference type used to represent the DEcmc value and the l:c ratio (specify l value only, c is always fixed at 1.0)</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="LRatio" type="xs:double" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="DE94Type">
<xs:annotation>
<xs:documentation>Color Difference type used to represent the DE94 value and the l:c ratio (specify l value only, c is always fixed at 1.0)</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="LRatio" type="xs:double" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="DE2000Type">
<xs:annotation>
<xs:documentation>Color Difference type used to represent the DE2000 value and the l:c ratio (specify l value only, c is always fixed at 1.0)</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="LRatio" type="xs:double" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="CustomDeltaType">
<xs:annotation>
<xs:documentation>Custom Delta Color Difference type used to represent custom delta color difference values</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Label" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="CustomDataType">
<xs:annotation>
<xs:documentation>Custom Data type used to represent custom color values</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Label" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="PrivateSpectrum">
<xs:annotation>
<xs:documentation>Color Value type used to represent private spectral data generally protected using an encryption method.The encryption method used is not specified within CxF.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="Name" type="xs:string" use="optional"/>
<xs:attribute name="KeyID" type="xs:string" use="required"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Time zone must be specified either as UTC or UTC offset </xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="StartWL" type="cc:StartWLType" use="optional"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="PrivateColorValues">
<xs:annotation>
<xs:documentation>Color Value type used to represent private color value data generally protected using an encryption method.The encryption method used is not specified within CxF.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="Name" type="xs:string" use="optional"/>
<xs:attribute name="KeyID" type="xs:string" use="required"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Time zone must be specified either as UTC or UTC offset </xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ReflectanceSpectrum">
<xs:annotation>
<xs:documentation>Color Value type used to represent the spectral data reflected from an illuminated object relative to the amount of light reflected from a reference white surface (Percent Reflectance). </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:reflectance_list">
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Time zone must be specified either as UTC or UTC offset </xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="StartWL" type="cc:StartWLType" use="optional"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="TransmittanceSpectrum">
<xs:annotation>
<xs:documentation>Color Value type used to represent spectral data collected in a transmission mode - ie: light transmitted through an object relative to the amount transmitted through the blank medium.(Percent Transmittance). </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:reflectance_list">
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Time zone must be specified either as UTC or UTC offset </xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="StartWL" type="cc:StartWLType" use="optional"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="EmissiveSpectrum">
<xs:annotation>
<xs:documentation>Color Value type used to represent spectral data collected in an emissive mode from a self illuminated object (also known as "spectral radiance" ). Units are in Watts per steradian per square meter per nm.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:emissive_list">
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Time zone must be specified either as UTC or UTC offset </xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="StartWL" type="cc:StartWLType" use="optional"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CustomSpectrum">
<xs:annotation>
<xs:documentation>Color Value type used to represent individual spectral data points without any specific number or increment. Each spectral point contains the wavelength (in nm) and the spectral value.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:SpectralPoint" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="MeasureDate" type="xs:dateTime" use="optional">
<xs:annotation>
<xs:documentation>Date time format is CCYY-MM-DDThh:mm:ss.SSSZ. Optional time zone must be specified either as UTC or UTC offset.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Profile" type="cc:ProfileType">
<xs:annotation>
<xs:documentation>A binary object containing a type of profile generally used to transform colorimetric data between output devices.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Image" type="cc:ImageType">
<xs:annotation>
<xs:documentation>a binary object containing a normal image file (example jpg image).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ProfileType">
<xs:annotation>
<xs:documentation>Type representing a profile with optional profile input parameters and creation date.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="ProfileChoice">
<xs:complexType>
<xs:choice>
<xs:element name="ProfileFile">
<xs:annotation>
<xs:documentation>Used to store the actual profile file. (The file is stored in the CxF document as a base64 encoded string.)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="ProfileName" type="xs:string">
<xs:annotation>
<xs:documentation>Optional attribute used to specify the profile name, not the path of where the file is located just the name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ProfileURI" type="xs:anyURI">
<xs:annotation>
<xs:documentation>URI of profile file.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="Parameters" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Optional set of profile input parameters.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ValueChoice">
<xs:complexType>
<xs:choice>
<xs:element name="DoubleValue" type="xs:double">
<xs:annotation>
<xs:documentation>Value of profile param (double).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IntegerValue" type="xs:int">
<xs:annotation>
<xs:documentation>Value of profile param (integer).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StringValue" type="xs:string">
<xs:annotation>
<xs:documentation>Value of profile param (string).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Created" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional field to store time and date profile was created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="required"/>
<xs:attribute name="Direction" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Profile_Input"/>
<xs:enumeration value="Profile_Output"/>
<xs:enumeration value="Profile_Both"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ImageType">
<xs:annotation>
<xs:documentation>Image file stored as a base64 encoded binary object</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:annotation>
<xs:documentation>Required attribute used to specify the image filename, without the path of where the file is located. Label can be used to distinguish between multiple ImageTypes for the same object.</xs:documentation>
</xs:annotation>
<xs:attribute name="Label" type="xs:string" use="optional"/>
<xs:attribute name="ImageFileName" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="ProfileCollection">
<xs:annotation>
<xs:documentation>CXF Element that can contain multiple profiles that may be referenced by the colorspace objects.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:Profile" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Process" type="xs:string">
<xs:annotation>
<xs:documentation>Description of process or colorant file used for a Color Recipe.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PhysicalAttributes">
<xs:annotation>
<xs:documentation>Object element that contains information regarding physical attributes of the object (images, size, quantity, etc.)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:TargetType" minOccurs="0"/>
<xs:element ref="cc:FinishType" minOccurs="0"/>
<xs:element ref="cc:SubstrateType" minOccurs="0"/>
<xs:element ref="cc:Quantity" minOccurs="0"/>
<xs:element ref="cc:Height" minOccurs="0"/>
<xs:element ref="cc:Width" minOccurs="0"/>
<xs:element ref="cc:Length" minOccurs="0"/>
<xs:element ref="cc:Thickness" minOccurs="0"/>
<xs:element ref="cc:Gloss" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:Opacity" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:CustomAttributeString" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:CustomAttributeValue" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:Image" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Observer">
<xs:annotation>
<xs:documentation>Enumeration of observer database used (2 degree or 10 degree). Optional attributes can be included for a custom Color Matching Function (CMF) database (or CIE 170 specification) configured for a specific angle and observer age.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:EObserverType">
<xs:attribute name="Name" type="xs:string" use="optional"/>
<xs:attribute name="Angle" type="xs:short" use="optional"/>
<xs:attribute name="Age" type="xs:short" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ObjectCollection">
<xs:annotation>
<xs:documentation>CXF Resource Element that contains ALL of the objects(and their colorspace values) in this CXF file.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:Object" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Object">
<xs:annotation>
<xs:documentation>The CxF representation for the physical (or conceptual) object which has color attributes, physical attributes, and/or other properties.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:CreationDate">
<xs:annotation>
<xs:documentation>The creation date/time of the object (and default for measurement date/time).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Comment" type="xs:string" minOccurs="0"/>
<xs:element ref="cc:ColorValues" minOccurs="0">
<xs:annotation>
<xs:documentation>The collection of all color value elements used to describe one or more color measurement instances of this object. Includes Spectral data, CIELab data, sRGB data, and other non device specifc color space types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:ColorDifferenceValues" minOccurs="0">
<xs:annotation>
<xs:documentation>The collection of all color difference value elements used to describe one or more color difference values compared to a referenced Object (as the standard).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:DeviceColorValues" minOccurs="0">
<xs:annotation>
<xs:documentation>The collection of all color value elements used to describe one or more device dependent color space descriptions of this object. Includes RGB, HTML, CMYK, Recipes and other device specifc color space types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:TagCollection" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Named Collection(s) of Tags (name/value pairs) which allow customization or inclusion of additional information regarding this object and its properties.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:PhysicalAttributes" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional physical attributes that describe certain physical characteristics of this object (gloss, target type, substrate type, size, weight, quantity, image, etc.) </xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="ObjectType" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Type of object represented (Standard, Trial, Target, Substrate, Colorant, etc.)</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Name" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Non-unique Name of this object (may be empty).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Id" type="xs:NCName" use="required">
<xs:annotation>
<xs:documentation>Unique REFERENCE to this object used for the purpose of referencing this item within the CXF file by CustomResources.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GUID" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>GUID is a globally unique identifier used to identify and distinguish this object instance from other objects which may have the same name and other characteristics, and be present in other files. The GUID can be useful in identifying when two objects from different files had the same origin.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="Method" type="cc:EAstmTableType">
<xs:annotation>
<xs:documentation>ASTM Table (5 or 6) or other method (1 nm interpolation) used to calculate XYZ values from spectral data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MeasurementType" type="cc:ESpectrumType">
<xs:annotation>
<xs:documentation>Type of measurement (Spectral_Reflectance, Spectral_Transmittance, Spectral_Emissive, etc) that the color values are based on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LuminanceUnitsType" type="cc:ELuminanceUnits">
<xs:annotation>
<xs:documentation>Units that the measurements are based on. (normalized, fL, cd/ft2, cd/m2). Generally "normalized" for values based on reflectance data and "cd/m2" for emissive based values</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MeasurementSpec">
<xs:annotation>
<xs:documentation>Portion of the colorspecification which contains information related to how color data was measured (geometry, device, etc.).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:MeasurementType"/>
<xs:element ref="cc:GeometryChoice"/>
<xs:element ref="cc:WavelengthRange" minOccurs="0"/>
<xs:element ref="cc:LuminanceUnitsType" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional units that measurement derived data is given in (typically normalized for Reflectance data and cd/m2 for emissive data values)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CalibrationStandard" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional string noting what calibration standard this data is referenced to (ex: NIST or XRGA)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Aperture" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional string noting size of aperture either as a descriptive string such as LAV,MAV,SAV or as a physical dimension in mm.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Backing" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional string noting what backing or background was used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BandpassCorrected" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>TRUE if spectral data (or data derived from it) has been corrected for Bandpass.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="cc:Device" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CustomIlluminant">
<xs:annotation>
<xs:documentation>Custom Illuminant data containing name and spectral power distribution.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="SPDList" type="cc:emissive_list" minOccurs="0"/>
<xs:element ref="cc:SpectralPoint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="WLStart" type="xs:short"/>
<xs:attribute name="List_Increment" type="xs:short"/>
</xs:complexType>
</xs:element>
<xs:element name="Illuminant">
<xs:annotation>
<xs:documentation>Enumeration of CIE illuminant used in calculating colorimetric data from spectral data. Optional attributes can be included for a custom Name, and/or for white point data for the illuminant. White Point data (X,Y,Z values for the illuminant) are needed in order to perform conversions between colorimetric data types (ex: CIELAB to CIEXYZ).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:EIlluminantType">
<xs:attribute name="Name" type="xs:string" use="optional"/>
<xs:attribute name="X" type="xs:double" use="optional"/>
<xs:attribute name="Y" type="xs:double" use="optional"/>
<xs:attribute name="Z" type="xs:double" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Height">
<xs:annotation>
<xs:documentation>Physical attribute. Height of object and units describing the value</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attribute name="Units" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="GeometryChoice">
<xs:annotation>
<xs:documentation>Enumerated choice of geometries (sphere, single angle, multiangle)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="cc:GeometryChoiceType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="DeviceFilter" type="cc:DeviceFilterType">
<xs:annotation>
<xs:documentation>Enumerated UV Filter used by device and an optional filterposition (% of filter inserted).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DeviceClass" type="cc:EDeviceClassType">
<xs:annotation>
<xs:documentation>Measurement device type, such as spot, scanning, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DeviceIllumination">
<xs:annotation>
<xs:documentation>Enumerated type of illumination used by the measuring device (M0-M3,, LED, Ambient, etc.) Optional attribute of CustomType can be included for a custom illumination method or source to further identify a Custom enumeration.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="cc:EDeviceIlluminationType">
<xs:attribute name="CustomType" type="xs:string" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Device">
<xs:annotation>
<xs:documentation>Element containing information about the measurement device from which the color values were derived.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Manufacturer" type="xs:string" minOccurs="0"/>
<xs:element name="Model" type="xs:string" minOccurs="0"/>
<xs:element name="SerialNumber" type="xs:string" minOccurs="0"/>
<xs:element ref="cc:DeviceClass" minOccurs="0"/>
<xs:element ref="cc:DeviceFilter" minOccurs="0"/>
<xs:element ref="cc:DeviceIllumination" minOccurs="0"/>
<xs:element name="DevicePolarization" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Colorant">
<xs:annotation>
<xs:documentation>Element which defines a specific colorant used within a formula. If the colorant is a base or resin the optional attribute isBase should be set to yes</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PartNumber" type="xs:string" minOccurs="0"/>
<xs:element name="Density" type="xs:double" nillable="true" minOccurs="0"/>
<xs:element name="Value" type="xs:double"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="ID" type="xs:string" use="optional"/>
<xs:attribute name="isBase" type="xs:boolean" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorSpecificationCollection">
<xs:annotation>
<xs:documentation>Collection of all color specifications within the CXF file.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:ColorSpecification" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ColorSpecification">
<xs:annotation>
<xs:documentation>ID reference to the colorSpecification that describes this colorvalue (illuminant/observer, dgeometry, device info).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:TristimulusSpec" minOccurs="0"/>
<xs:element ref="cc:MeasurementSpec"/>
<xs:element ref="cc:PhysicalAttributes" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="required">
<xs:annotation>
<xs:documentation>Unique ID (within this CxF file) used as a reference for all ColorSpace types in the ColorSpecification attribute.
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="ColorValues">
<xs:annotation>
<xs:documentation>Normal colorspace values such as spectral data, CIELab, XYZ</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="cc:ReflectanceSpectrum" minOccurs="0"/>
<xs:element ref="cc:TransmittanceSpectrum" minOccurs="0"/>
<xs:element ref="cc:EmissiveSpectrum" minOccurs="0"/>
<xs:element ref="cc:CustomSpectrum" minOccurs="0"/>
<xs:element ref="cc:ColorSRGB" minOccurs="0"/>
<xs:element ref="cc:ColorAdobeRGB" minOccurs="0"/>
<xs:element ref="cc:ColorCIELab" minOccurs="0"/>
<xs:element ref="cc:ColorCIELCh" minOccurs="0"/>
<xs:element ref="cc:ColorCIEXYZ" minOccurs="0"/>
<xs:element ref="cc:ColorEmissiveCIEXYZ" minOccurs="0"/>
<xs:element ref="cc:ColorCIExyY" minOccurs="0"/>
<xs:element ref="cc:ColorEmissiveCIExyY" minOccurs="0"/>
<xs:element ref="cc:ColorCIELuv" minOccurs="0"/>
<xs:element ref="cc:ColorDensity" minOccurs="0"/>
<xs:element ref="cc:PrivateSpectrum" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:PrivateColorValues" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:CustomColorSpace" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Color Space type that holds Custom (non-CIE) color space values. An example would be HunterLab L,a,b values.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="ColorDifferenceValues">
<xs:annotation>
<xs:documentation>CIELab Color difference values compared to the referenced standard</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="cc:DeltaCIELab" minOccurs="0"/>
<xs:element ref="cc:DeltaCustom" minOccurs="0"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="DeviceColorValues">
<xs:annotation>
<xs:documentation>Device dependent colorspace values such as RGB, CMYK, etc.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="cc:ColorHTML" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorNotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorRGB" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorHSL" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorCMYK" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorCMYKPlusN" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorCustom" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorPantoneHexachrome" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:ColorRecipe" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:PrivateColorValues" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="ColorDensity">
<xs:annotation>
<xs:documentation>Color Value Type used to represent a particular density status and filter. If specified as a relative density value, an optional BaseOffset may be given with the density values that were subtracted
in order to get media-relative units.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Density" type="xs:double"/>
<xs:element name="Status" type="cc:EDensityStatusType"/>
<xs:element name="Filter" type="cc:EDensityFilterType"/>
<xs:element name="BaseOffset" type="xs:double" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorRGB">
<xs:annotation>
<xs:documentation>Device dependent colorspace of RGB values (and MaxRange if other than 255)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MaxRange" type="xs:short" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional parameter which defines the maximum range of values represented if based on values other than usual. For instance, RGB values for monitor display are typically between 0-255 (8 bit resolution per channel), but lower or higher resolutions are possible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="R" type="xs:short"/>
<xs:element name="G" type="xs:short"/>
<xs:element name="B" type="xs:short"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorSRGB">
<xs:annotation>
<xs:documentation>Device independent colorspace of RGB values for D65 2 degree observer.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MaxRange" type="xs:short" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional parameter which defines the maximum range of values represented if based on values other than usual. For instance, RGB values for monitor display are typically between 0-255, but higher resolutions are possible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="R" type="xs:short"/>
<xs:element name="G" type="xs:short"/>
<xs:element name="B" type="xs:short"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorRecipe">
<xs:annotation>
<xs:documentation>An element which contains a recipe(formula) consisting primarily of a list of named colorants and the amount of each.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="cc:CreationDate"/>
<xs:element ref="cc:Tag" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="cc:Substrate" minOccurs="0"/>
<xs:element ref="cc:Process" minOccurs="0"/>
<xs:element ref="cc:Colorant" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Units" type="xs:string" use="required"/>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="Comments" type="xs:string" use="optional"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorNotation">
<xs:annotation>
<xs:documentation>Colorspace type that holds custom notations such as Pantone, Munsell, etc.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Notation" type="xs:string" use="required"/>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorHTML">
<xs:annotation>
<xs:documentation>ColorSpace type that holds the encoded RGB string used for previewing a color in html syntax.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="HTML" type="xs:string" use="required"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCMYK">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CMYK values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Cyan">
<xs:annotation>
<xs:documentation>Percent cyan 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Magenta">
<xs:annotation>
<xs:documentation>Percent magenta 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Yellow">
<xs:annotation>
<xs:documentation>Percent yellow 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Black">
<xs:annotation>
<xs:documentation>Percent black 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorAdobeRGB">
<xs:annotation>
<xs:documentation>ColorSpace type that holds Adobe RGB values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MaxRange" type="xs:short" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional parameter which defines the maximum range of values represented if based on values other than normal. For instance, RGB values for monitor display are typically between 0-255 inclusive (8 bit resolution per channel), but lower or higher resolutions are possible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="R" type="xs:short"/>
<xs:element name="G" type="xs:short"/>
<xs:element name="B" type="xs:short"/>
<xs:element name="Alpha" minOccurs="0">
<xs:annotation>
<xs:documentation>Optional Alpha channel is expressed as a real number and must be within 0.0 (inclusive) and 1.0 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="1.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorPantoneHexachrome">
<xs:annotation>
<xs:documentation>ColorSpace type that holds Pantone Hexachrome values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Cyan">
<xs:annotation>
<xs:documentation>Percent cyan 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Magenta">
<xs:annotation>
<xs:documentation>Percent magenta 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Yellow">
<xs:annotation>
<xs:documentation>Percent yellow 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Black">
<xs:annotation>
<xs:documentation>Percent black 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Orange">
<xs:annotation>
<xs:documentation>Percent orange 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Green">
<xs:annotation>
<xs:documentation>Percent green 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCMYKPlusN">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CMYKn values. CMYK colorspace includes CMYK plus additional named colors and amounts.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Cyan">
<xs:annotation>
<xs:documentation>Percent cyan 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Magenta">
<xs:annotation>
<xs:documentation>Percent magenta 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Yellow">
<xs:annotation>
<xs:documentation>Percent yellow 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Black">
<xs:annotation>
<xs:documentation>Percent black 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="100.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SpotColor" type="cc:SpotColorType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Optional spot colors, specifiec by name and percentage 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCustom">
<xs:annotation>
<xs:documentation>Device ColorSpace type that holds Custom color values. This colorspace contains named colors and amounts.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="SpotColor" type="cc:SpotColorType" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Custom spot colors, specifiec by name and percentage 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="ProfileSpecification" type="xs:NCName" use="optional"/>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="DeltaCustom">
<xs:annotation>
<xs:documentation>Color Difference type that holds Custom color difference (Delta) values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="DeltaValue" type="cc:CustomDeltaType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
<xs:attribute name="StandardRef" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="DeltaCIELab">
<xs:annotation>
<xs:documentation>Color Difference type that holds CIELab color difference (Delta) values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="dL" type="xs:double" minOccurs="0"/>
<xs:element name="dA" type="xs:double" minOccurs="0"/>
<xs:element name="dB" type="xs:double" minOccurs="0"/>
<xs:element name="dC" type="xs:double" minOccurs="0"/>
<xs:element name="dH" type="xs:double" minOccurs="0"/>
<xs:element name="dE" type="xs:double" minOccurs="0"/>
<xs:element name="dEcmc" type="cc:DEcmcType" minOccurs="0"/>
<xs:element name="dE94" type="cc:DE94Type" minOccurs="0"/>
<xs:element name="dE2000" type="cc:DE2000Type" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
<xs:attribute name="StandardRef" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCIELab">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CIELab values. Range is nominally 0-100.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="L">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="A">
<xs:simpleType>
<xs:restriction base="xs:double"/>
</xs:simpleType>
</xs:element>
<xs:element name="B">
<xs:simpleType>
<xs:restriction base="xs:double"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCIELCh">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CIELch values. Range is nominally 0-100.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="L">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="C">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="H">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="360.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCIELuv">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CIELuv values. Range is nominally 0-100.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="L">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="U">
<xs:simpleType>
<xs:restriction base="xs:double"/>
</xs:simpleType>
</xs:element>
<xs:element name="V">
<xs:simpleType>
<xs:restriction base="xs:double"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCIEXYZ">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CIEXYZvalues. Range is nominally 0-100.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="X">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Z">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorEmissiveCIEXYZ">
<xs:annotation>
<xs:documentation>ColorSpace type that holds emissive CIEXYZ values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="X">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Z">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorCIExyY">
<xs:annotation>
<xs:documentation>ColorSpace type that holds CIExyY values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="x">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="1.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="1.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="CustomColorSpace">
<xs:annotation>
<xs:documentation>Color Space type that holds Custom color space values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Value" type="cc:CustomDataType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorEmissiveCIExyY">
<xs:annotation>
<xs:documentation>ColorSpace type that holds emissive CIExyY values.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="x">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="1.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="1.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Y">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ColorHSL">
<xs:annotation>
<xs:documentation>ColorSpace type that holds Hue, Saturation, Lightness values. Hue range is 0-360. Nominal range of Saturation and Lightness values are 0-100.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Hue">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="360.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Saturation">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Lightness">
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:minInclusive value="0.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="Name" type="xs:string"/>
<xs:attribute name="ColorSpecification" type="xs:NCName" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="SpotColor" type="cc:SpotColorType">
<xs:annotation>
<xs:documentation>Optional spot colors, specifiec by name and percentage 0 (inclusive) to 100 (inclusive).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:schema>