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

    Copyright (C) 2022-2026 Philip Helger (www.helger.com)
    philip[at]helger[dot]com

    Licensed 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.

-->
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.helger</groupId>
    <artifactId>parent-pom</artifactId>
    <version>3.0.5</version>
  </parent>
  <artifactId>phorm</artifactId>
  <version>2.1.3</version>
  <packaging>war</packaging>
  <name>phorm</name>
  <description>Phorm - Generic Document Validation Service</description>
  <inceptionYear>2022</inceptionYear>
  <url>https://github.com/phax/phorm</url>
 
  <licenses>
    <license>
      <name>Apache 2</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  
  <scm>
    <connection>scm:git:https://github.com/phax/phorm.git</connection>
    <developerConnection>scm:git:https://github.com/phax/phorm.git</developerConnection>
    <url>https://github.com/phax/phorm</url>
    <tag>phorm-2.1.3</tag>
  </scm>

  <organization>
    <name>Philip Helger</name>
    <url>http://www.helger.com</url>
  </organization>

  <developers>
    <developer>
      <id>philip</id>
      <name>Philip Helger</name>
      <email>philip(at)helger.com</email>
      <url>http://www.helger.com</url>
    </developer>
  </developers>
  
  <properties>
    <log4j.version>2.26.0</log4j.version>
  </properties>
  
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.helger.commons</groupId>
        <artifactId>ph-commons-parent-pom</artifactId>
        <version>12.3.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.web</groupId>
        <artifactId>ph-web-parent-pom</artifactId>
        <version>11.4.1</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.photon</groupId>
        <artifactId>ph-oton-parent-pom</artifactId>
        <version>10.2.3</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.ubl</groupId>
        <artifactId>ph-ubl-parent-pom</artifactId>
        <version>10.2.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.cii</groupId>
        <artifactId>ph-cii-parent-pom</artifactId>
        <version>4.1.1</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.schematron</groupId>
        <artifactId>ph-schematron-parent-pom</artifactId>
        <version>9.2.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.diver</groupId>
        <artifactId>ph-diver-parent-pom</artifactId>
        <version>4.2.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger.phive</groupId>
        <artifactId>phive-parent-pom</artifactId>
        <version>12.0.3</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- This is the library that usually needs updating -->
      <dependency>
        <groupId>com.helger.phive.rules</groupId>
        <artifactId>phive-rules-parent-pom</artifactId>
        <version>4.3.8</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.helger</groupId>
        <artifactId>ddd</artifactId>
        <version>0.8.9</version>
      </dependency>
      <dependency>
        <groupId>com.helger.kaltblut</groupId>
        <artifactId>kaltblut-parent-pom</artifactId>
        <version>0.9.2</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j2-impl</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-web</artifactId>
        <version>${log4j.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>com.helger.photon</groupId>
      <artifactId>ph-oton-core</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.commons</groupId>
      <artifactId>ph-config</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger</groupId>
      <artifactId>ddd</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.kaltblut</groupId>
      <artifactId>kaltblut-core</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.kaltblut</groupId>
      <artifactId>kaltblut-verapdf</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive</groupId>
      <artifactId>phive-result</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive</groupId>
      <artifactId>phive-result-html</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-cii</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-cius-pt</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-cius-ro</artifactId>
    </dependency>
   <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-ebinterface</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-ehf</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-en16931</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-energieefactuur</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-eracun</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-facturae</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-fatturapa</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-finvoice</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-france</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-ksef</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-oioubl</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-peppol</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-peppol-legacy</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-peppol-italy</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-setu</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-simplerinvoicing</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-svefaktura</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-teapps</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-turkey</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-ubl</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-ublbe</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-xrechnung</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-zatca</artifactId>
    </dependency>
    <dependency>
      <groupId>com.helger.phive.rules</groupId>
      <artifactId>phive-rules-zugferd</artifactId>
    </dependency>

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j2-impl</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>jul-to-slf4j</artifactId>
    </dependency>

    <dependency>
      <groupId>com.sun.xml.bind</groupId>
      <artifactId>jaxb-impl</artifactId>
    </dependency>
    
    <dependency>
      <groupId>jakarta.servlet</groupId>
      <artifactId>jakarta.servlet-api</artifactId>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.helger.photon</groupId>
      <artifactId>ph-oton-jetty</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.helger.web</groupId>
      <artifactId>ph-httpclient</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.helger.commons</groupId>
      <artifactId>ph-unittest-support-ext</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <resources>
      <!-- Hack to filter only properties files -->
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
          <include>**/*.properties</include>
        </includes>
      </resource>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>false</filtering>
        <excludes>
          <exclude>**/*.properties</exclude>
        </excludes>
      </resource>
      <resource>
        <directory>${basedir}/src/main/webapp</directory>
        <targetPath>${project.build.directory}/webapp-classes</targetPath>
      </resource>
      <resource>
        <directory>${basedir}/src/test/resources</directory>
        <targetPath>${project.build.directory}/test-classes</targetPath>
      </resource>
    </resources>
  </build>
</project>
