<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://purl.oclc.org/dsdl/schematron" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    queryBinding="xslt2">
    <ns prefix="deltaxml" uri="http://www.deltaxml.com/ns/well-formed-delta-v1"/>
    <ns prefix="saxon" uri="http://saxon.sf.net/"/>
    
    <include href="delta-common.sch#COMMON-root-rules"/>
    <include href="simplified-merge.sch#simplified-merge-versionSet"/>
    <include href="simplified-merge.sch#simplified-merge-version-group-checks"/>
    <include href="simplified-merge.sch#simplified-merge-version-attribute-group-checks"/>
    <include href="simplified-merge.sch#simplified-merge-version-content-checks"/>
    <include href="simplified-merge.sch#simplified-merge-version-attribute-checks"/>
    <include href="simplified-merge.sch#simplified-merge-version-content-checks"/>
    <include href="deltaV2-sequential-merge.sch#simplified-merge-element-rules"/>
    
    <xsl:include href="xsl/delta-2-functions.xsl"/>
    
    <xsl:variable name="delta-version-order" select="tokenize(/*/@deltaxml:version-order, ', ')" as="xs:string*" />
    
    <pattern id="simplified-sequential-merge-root-checks">
        <rule id="simplified-merge-content-type" context="/*">
            <include href="deltaV2-merge.sch#V2-merge-version-order"/>
            <include href="simplified-merge.sch#V2-version-value"/>
            <assert id="content-type-value"
                test="@deltaxml:content-type = ('simplified-merge-sequential')">There must be a deltaxml:content-type attribute with the value 'simplified-merge-sequential'.</assert>
        </rule>
    </pattern>
    
</schema>