<project>
  <parent>
    <artifactId>specs</artifactId>
    <groupId>org.apache.geronimo.specs</groupId>
    <version>1.1</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>geronimo-qname_1.1_spec</artifactId>
  <name>QName</name>
  <version>${geronimoSpecsQnameVersion}</version>

  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/specs/trunk/geronimo-spec-qname/</connection>
    <developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/specs/trunk/geronimo-spec-qname/</developerConnection>
    <url>http://svn.apache.org/viewcvs.cgi/geronimo/specs/trunk/geronimo-spec-qname/</url>
  </scm>

</project>
