diff --git a/build.xml b/build.xml
index 9cd1d1d..f78d3fb 100644
--- a/build.xml
+++ b/build.xml
@@ -21,15 +21,15 @@
   <property file="${user.home}/.m2/maven.properties"/>
   <property name="maven.build.output" value="target/classes"/>
   <property name="maven.build.directory" value="target"/>
-  <property name="maven.build.final.name" value="jspf-0.9.5-SNAPSHOT"/>
+  <property name="maven.build.final.name" value="jspf-0.9.7-SNAPSHOT"/>
   <property name="maven.test.reports" value="${maven.build.directory}/test-reports"/>
   <property name="maven.test.output" value="target/test-classes"/>
   <property name="stage.dir" value="stage/"/>
   <path id="build.classpath">
     <fileset dir="${stage.dir}">
-      <include name="dnsjava/jars/dnsjava-2.0.4-SNAPSHOT.jar"/>
-      <include name="uk.nominet/jars/dnsjnio-0.9.7-SNAPSHOT.jar"/>
-      <include name="commons-cli/jars/commons-cli-1.0.jar"/>
+      <include name="dnsjava/jars/dnsjava-2.0.5.jar"/>
+      <include name="uk.nominet/jars/dnsjnio-0.9.9.jar"/>
+      <include name="commons-cli/jars/commons-cli-1.1.jar"/>
       <include name="log4j/jars/log4j-1.2.14.jar"/>
       <include name="org.jvyaml/jars/jvyaml-0.2.1.jar"/>
     </fileset>
diff --git a/src/test/resources/org/apache/james/jspf/rfc4408-tests.yml b/src/test/resources/org/apache/james/jspf/rfc4408-tests.yml
index cc09f35..50bbb71 100644
--- a/src/test/resources/org/apache/james/jspf/rfc4408-tests.yml
+++ b/src/test/resources/org/apache/james/jspf/rfc4408-tests.yml
@@ -360,31 +360,47 @@
     result: permerror
   invalid-domain-empty-label:
     description: >-
-      Domain-spec must end in macro-expand or valid toplabel.
+      target-name that is a valid domain-spec per RFC 4408 but an invalid
+      domain name per RFC 1035 (empty label) must be treated as non-existent.
     comment: >-
-      But anything goes before the toplabel.  Empty labels cannot be
-      encoded for sending to a name server, so resolver must give error
-      or empty result.  Empty result is analogous to 4.3/1, and so
-      is preferred.
-    spec: [8.1/2, 5/10]
+      An empty domain label, i.e. two successive dots, in a mechanism
+      target-name is valid domain-spec syntax, even though a DNS query cannot
+      be composed from it.  In analogy to 4.3/1 and 5/10/3, the mechanism
+      should then be treated as a no-match.
+    spec: [4.3/1, 5/10/3]
     helo: mail.example.com
     host: 1.2.3.4
     mailfrom: foo@t10.example.com
-    result: [fail, temperror]
+    result: fail
   invalid-domain-long:
     description: >-
-      Domain-spec must end in macro-expand or valid toplabel.
+      target-name that is a valid domain-spec per RFC 4408 but an invalid
+      domain name per RFC 1035 (long label) must be treated as non-existent.
     comment: >-
-      But anything goes before the toplabel.  Upper case H macro
-      url escapes the HELO string, the result is longer than 63 chars.
-      Long labels cannot be coded in a DNS query packet, so resolver must
-      give error or empty result.  Empty result is analogous to 4.3/1,
-      and so is preferred.
-    spec: [8.1/2, 5/10]
-    helo: "%%%%%%%%%%%%%%%%%%%%%%"
+      A domain label longer than 63 characters in a mechanism target-name is
+      valid domain-spec syntax, even though a DNS query cannot be composed
+      from it.  In analogy to 4.3/1 and 5/10/3, the mechanism should then be
+      treated as a no-match.
+    spec: [4.3/1, 5/10/3]
+    helo: mail.example.com
     host: 1.2.3.4
     mailfrom: foo@t11.example.com
-    result: [fail, temperror]
+    result: fail
+  invalid-domain-long-via-macro:
+    description: >-
+      target-name that is a valid domain-spec per RFC 4408 but an invalid
+      domain name per RFC 1035 (long label) must be treated as non-existent.
+    comment: >-
+      A domain label longer than 63 characters that results from macro
+      expansion in a mechanism target-name is valid domain-spec syntax (and is
+      not even subject to syntax checking after macro expansion), even though
+      a DNS query cannot be composed from it.  In analogy to 4.3/1 and 5/10/3,
+      the mechanism should then be treated as a no-match.
+    spec: [4.3/1, 5/10/3]
+    helo: "%%%%%%%%%%%%%%%%%%%%%%"
+    host: 1.2.3.4
+    mailfrom: foo@t12.example.com
+    result: fail
 zonedata:
   mail.example.com:
     - A: 1.2.3.4
@@ -409,6 +425,8 @@
   t10.example.com:
     - SPF: v=spf1 a:mail.example...com -all
   t11.example.com:
+    - SPF: v=spf1 a:a123456789012345678901234567890123456789012345678901234567890123.example.com -all
+  t12.example.com:
     - SPF: v=spf1 a:%{H}.bar -all
 ---
 description: ALL mechanism syntax
@@ -697,6 +715,16 @@
     host: 1.2.3.4
     mailfrom: foo@e5a.example.com
     result: permerror
+  a-only-top-label-trailing-dot:
+    description: >-
+      Domain-spec may not consist of only a top-label without a leading dot.
+    comment:
+      "A trailing dot doesn't help."
+    spec: 8.1/2
+    helo: mail.example.com
+    host: 1.2.3.4
+    mailfrom: foo@e5b.example.com
+    result: permerror
   a-colon-domain:
     description: >-
       Domain-spec may contain any visible char except %
@@ -729,20 +757,6 @@
     host: 1.2.3.4
     mailfrom: foo@e13.example.com
     result: permerror
-  a-valid-syntax-but-unqueryable:
-    description: >-
-      If a DNS-interactive mechanism has valid syntax according to the SPF
-      specification, but a DNS query cannot be composed from its target-name
-      (e.g. due to empty labels, i.e. two or more successive dots), then the
-      mechanism should be treated as a no-match.
-    comment: >-
-      The rationale is that, technically, the mechanism is not a syntax error,
-      and the odd target-name obviously cannot exist in DNS.
-    spec: 8.1/2
-    helo: mail.example.com
-    host: 1.2.3.4
-    mailfrom: foo@e14.example.com
-    result: neutral
 zonedata:
   mail.example.com:
     - A: 1.2.3.4
@@ -766,6 +780,8 @@
     - SPF: v=spf1 a:abc.123
   e5a.example.com:
     - SPF: v=spf1 a:museum
+  e5b.example.com:
+    - SPF: v=spf1 a:museum.
   e6.example.com:
     - SPF: v=spf1 a//33 -all
   e6a.example.com:
@@ -787,8 +803,6 @@
     - SPF: v=spf1 a:example.-com
   e13.example.com:
     - SPF: "v=spf1 a:"
-  e14.example.com:
-    - SPF: v=spf1 a:example..com
 ---
 description: Include mechanism semantics and syntax
 tests:
diff --git a/stage/dnsjava/poms/dnsjava-2.0.5.pom b/stage/dnsjava/poms/dnsjava-2.0.5.pom
index f0c5c7b..ee7684c 100644
--- a/stage/dnsjava/poms/dnsjava-2.0.5.pom
+++ b/stage/dnsjava/poms/dnsjava-2.0.5.pom
@@ -1,4 +1,22 @@
 <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">
+  <!--
+    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.    
+  -->
   <modelVersion>4.0.0</modelVersion>
   <groupId>dnsjava</groupId>
   <artifactId>dnsjava</artifactId>
diff --git a/stage/junit/poms/junit-3.8.1.pom b/stage/junit/poms/junit-3.8.1.pom
index 2169a65..c724642 100644
--- a/stage/junit/poms/junit-3.8.1.pom
+++ b/stage/junit/poms/junit-3.8.1.pom
@@ -1,29 +1,33 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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>
+<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">
+  <!--
+    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.    
+  -->
+  <modelVersion>4.0.0</modelVersion>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
-  <version>3.8.1</version>
-  <name>JUnit</name>
-  <url>http://junit.org</url>
-  <description>
-    JUnit is a regression testing framework written by Erich Gamma and Kent Beck. It is used by the developer who implements unit tests in Java.
-  </description>
-  <organization>
-    <name>JUnit</name>
-    <url>http://www.junit.org</url>
-  </organization>
+  <name>JUnit</name>
+  <version>3.8.1</version>
+  <packaging>jar</packaging>
+  <url>http://www.junit.org</url>
   <licenses>
     <license>
-      <name>Common Public License Version 1.0</name>
-      <url>http://www.opensource.org/licenses/cpl1.0.txt</url>
+      <name>CPL v1.0</name>
+      <url>http://junit.sourceforge.net/cpl-v10.html</url>
     </license>
   </licenses>
-  <scm>
-    <url>http://junit.cvs.sourceforge.net/junit/</url>
-  </scm>
-  <dependencies>
-  </dependencies>
-</project>
+</project>
\ No newline at end of file
diff --git a/stage/org.jvyaml/poms/jvyaml-0.2.1.pom b/stage/org.jvyaml/poms/jvyaml-0.2.1.pom
index 53eb2c7..57441da 100644
--- a/stage/org.jvyaml/poms/jvyaml-0.2.1.pom
+++ b/stage/org.jvyaml/poms/jvyaml-0.2.1.pom
@@ -1,4 +1,22 @@
 <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">
+  <!--
+    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.    
+  -->
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.jvyaml</groupId>
   <artifactId>jvyaml</artifactId>
diff --git a/stage/uk.nominet/poms/dnsjnio-0.9.9.pom b/stage/uk.nominet/poms/dnsjnio-0.9.9.pom
index fe869af..96a3325 100644
--- a/stage/uk.nominet/poms/dnsjnio-0.9.9.pom
+++ b/stage/uk.nominet/poms/dnsjnio-0.9.9.pom
@@ -1,4 +1,22 @@
 <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">
+  <!--
+    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.    
+  -->
   <modelVersion>4.0.0</modelVersion>
   <groupId>uk.nominet</groupId>
   <artifactId>dnsjnio</artifactId>
