diff --git a/pom.xml b/pom.xml
index f9b4d7c..01f5dfd 100755
--- a/pom.xml
+++ b/pom.xml
@@ -1,39 +1,20 @@
-<?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.
--->
-
 <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</groupId>
       <artifactId>apache</artifactId>
-      <version>3</version>
+      <version>7</version>
    </parent>
    <groupId>org.apache.struts</groupId>
    <artifactId>struts-master</artifactId>
-   <version>6-SNAPSHOT</version>
+   <version>6</version>
    <packaging>pom</packaging>
    <name>Apache Struts</name>
 
    <scm>
-     <connection>scm:svn:http://svn.apache.org/repos/asf/struts/maven/trunk/pom</connection>
-     <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/maven/trunk/pom</developerConnection>
-     <url>http://svn.apache.org/repos/asf/struts/maven/trunk/pom</url>
+     <connection>scm:svn:http://svn.apache.org/repos/asf/struts/maven/tags/STRUTS_MASTER_6</connection>
+     <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/maven/tags/STRUTS_MASTER_6</developerConnection>
+     <url>http://svn.apache.org/repos/asf/struts/maven/tags/STRUTS_MASTER_6</url>
    </scm>
    
    <description>
@@ -311,4 +292,4 @@
          </plugin>
       </plugins>
    </build>
-</project>
+</project>
\ No newline at end of file
