--- /dev/null
+<?php
+
+$file = __DIR__.'/ProjectWithXsdExtensionInPhar.phar';
+if (is_file($file)) {
+ @unlink($file);
+}
+
+$phar = new Phar($file, 0, 'ProjectWithXsdExtensionInPhar.phar');
+$phar->addFromString('ProjectWithXsdExtensionInPhar.php', <<<'EOT'
+<?php
+
+class ProjectWithXsdExtensionInPhar extends ProjectExtension
+{
+ public function getXsdValidationBasePath()
+ {
+ return __DIR__.'/schema';
+ }
+
+ public function getNamespace()
+ {
+ return 'http://www.example.com/schema/projectwithxsdinphar';
+ }
+
+ public function getAlias()
+ {
+ return 'projectwithxsdinphar';
+ }
+}
+EOT
+);
+$phar->addFromString('schema/project-1.0.xsd', <<<'EOT'
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<xsd:schema xmlns="http://www.example.com/schema/projectwithxsdinphar"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.example.com/schema/projectwithxsdinphar"
+ elementFormDefault="qualified">
+
+ <xsd:element name="bar" type="bar" />
+
+ <xsd:complexType name="bar">
+ <xsd:attribute name="foo" type="xsd:string" />
+ </xsd:complexType>
+</xsd:schema>
+EOT
+);
+$phar->setStub('<?php Phar::mapPhar("ProjectWithXsdExtensionInPhar.phar"); require_once "phar://ProjectWithXsdExtensionInPhar.phar/ProjectWithXsdExtensionInPhar.php"; __HALT_COMPILER(); ?>');