<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
    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.
-->
<!-- $Rev:  $ $Date:  $ -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.apache.directory.server</groupId>
    <artifactId>apacheds-parent</artifactId>
    <version>1.5.2-SNAPSHOT</version>
  </parent>
  <artifactId>apacheds-schema-extras</artifactId>
  <name>ApacheDS Extra Schemas</name>
  <packaging>jar</packaging>

  <description>
    A set of additional bootstrap schemas beyond the essential set.
  </description>

  <dependencies>
    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-schema-registries</artifactId>
      <version>${pom.version}</version>
    </dependency>

    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-schema-bootstrap</artifactId>
      <version>${pom.version}</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.directory.server</groupId>
        <artifactId>apacheds-core-plugin</artifactId>
        <version>${pom.version}</version>
        <configuration>
          <schemaSourcesDir>src/main/schema</schemaSourcesDir>
          <schemas>
            <schema>
              <name>apachedns</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>autofs</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
                <dependency>cosine</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>collective</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>corba</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>cosine</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>inetorgperson</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
                <dependency>cosine</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>java</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>krb5kdc</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>nis</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
                <dependency>cosine</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>mozilla</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>dhcp</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
              </dependencies>
            </schema>
            <schema>
              <name>samba</name>
              <dependencies>
                <dependency>system</dependency>
                <dependency>core</dependency>
                <dependency>inetorgperson</dependency>
                <dependency>nis</dependency>
              </dependencies>
            </schema>
          </schemas>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>generate</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>

