﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="price"
    targetNamespace="http://schemas.cdon.com/marketplace/0.3.1-preview/price"
    xmlns="http://schemas.cdon.com/marketplace/0.3.1-preview/price"
    attributeFormDefault="unqualified"
    elementFormDefault="qualified"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:include schemaLocation="identities.xsd" />
  <xs:include schemaLocation="types.xsd" />

  <xs:simpleType name="money">
    <xs:annotation>
      <xs:documentation>Amount includes VAT</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="2" />
      <xs:minInclusive value="0" />
      <xs:maxInclusive value="1000000" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="vat">
    <xs:restriction base="xs:decimal">
      <xs:minInclusive value="0" />
      <xs:maxInclusive value="1" />
      <xs:fractionDigits value="3" />
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="market">
    <xs:annotation>
      <xs:documentation>
        Please see the documentation regarding valid values for the "shippingRate"- and "vat"-element
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="salePrice" type="money" minOccurs="1" maxOccurs="1" />
      <xs:element name="recommendedPrice" type="money" minOccurs="1" maxOccurs="1" />
      <xs:element name="vat" type="vat" minOccurs="1" maxOccurs="1" />
      <xs:element name="shippingRate" type="money" minOccurs="1" maxOccurs="1" />
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="product">
    <xs:sequence>
      <xs:element name="id" type="id" minOccurs="1" maxOccurs="1" />
      <xs:element name="se" type="market" minOccurs="0" maxOccurs="1" />
      <xs:element name="dk" type="market" minOccurs="0" maxOccurs="1" />
      <xs:element name="fi" type="market" minOccurs="0" maxOccurs="1" />
      <xs:element name="no" type="market" minOccurs="0" maxOccurs="1" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="marketplace">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="product" type="product" minOccurs="1" maxOccurs="unbounded" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>

</xs:schema>