<?xml version="1.0" encoding="UTF-8" ?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.

-->

<!DOCTYPE MIME-resolver PUBLIC "-//NetBeans//DTD MIME Resolver 1.0//EN" "http://www.netbeans.org/dtds/mime-resolver-1_0.dtd">



<MIME-resolver>
    <!-- Resolve according to root element: -->
    <file>
        <ext name="xml"/>
        <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<doctype public-id="-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"/>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
                <doctype public-id="-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"/>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="http://java.sun.com/xml/ns/javaee">
                    <attr name="version" text="1.2"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="http://java.sun.com/xml/ns/javaee">
                    <attr name="version" text="2.0"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="http://java.sun.com/xml/ns/javaee">
                    <attr name="version" text="2.1"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="http://xmlns.jcp.org/xml/ns/javaee">
                    <attr name="version" text="2.2"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="http://xmlns.jcp.org/xml/ns/javaee">
                    <attr name="version" text="2.3"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="https://jakarta.ee/xml/ns/jakartaee">
                    <attr name="version" text="3.0"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
    <file>
        <ext name="xml"/>
            <resolver mime="text/x-jsf+xml">
            <xml-rule>
            	<element name="faces-config" ns="https://jakarta.ee/xml/ns/jakartaee">
                    <attr name="version" text="4.0"/>
                </element>
            </xml-rule>
        </resolver>
    </file>
</MIME-resolver>
