protected function execute(InputInterface $input, OutputInterface $output)
 {
     $inputArgs = new XsdGeneratePhpArgs($input);
     $namingFactory = new Factory();
     $namingStrategy = $namingFactory->getNamingStrategy($inputArgs->getNamingStrategy());
     $converter = new PhpConverter($namingStrategy);
     $processor = $this->createPhpProcessor($inputArgs, $converter, new SchemaReader(), $output);
     $processor->execute($this);
     return 0;
 }
 /**
  * @param XsdGeneratePhpArgs $input
  * @return string
  */
 private function getPhpNamespace(XsdGeneratePhpArgs $input)
 {
     return trim(strtr($input->getNamespace(), "./", "\\\\"), "\\");
 }