ObjectWithXmlNamespaces.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. use JMS\Serializer\Metadata\ClassMetadata;
  3. use JMS\Serializer\Metadata\PropertyMetadata;
  4. $metadata = new ClassMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces');
  5. $metadata->xmlRootName = 'test-object';
  6. $metadata->xmlRootNamespace = 'http://example.com/namespace';
  7. $metadata->registerNamespace('http://example.com/namespace');
  8. $metadata->registerNamespace('http://schemas.google.com/g/2005', 'gd');
  9. $metadata->registerNamespace('http://www.w3.org/2005/Atom', 'atom');
  10. $pMetadata = new PropertyMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces', 'title');
  11. $pMetadata->setType('string');
  12. $pMetadata->xmlNamespace = "http://purl.org/dc/elements/1.1/";
  13. $metadata->addPropertyMetadata($pMetadata);
  14. $pMetadata = new PropertyMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces', 'createdAt');
  15. $pMetadata->setType('DateTime');
  16. $pMetadata->xmlAttribute = true;
  17. $metadata->addPropertyMetadata($pMetadata);
  18. $pMetadata = new PropertyMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces', 'etag');
  19. $pMetadata->setType('string');
  20. $pMetadata->xmlAttribute = true;
  21. $pMetadata->xmlNamespace = 'http://schemas.google.com/g/2005';
  22. $metadata->addPropertyMetadata($pMetadata);
  23. $pMetadata = new PropertyMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces', 'author');
  24. $pMetadata->setType('string');
  25. $pMetadata->xmlNamespace = 'http://www.w3.org/2005/Atom';
  26. $metadata->addPropertyMetadata($pMetadata);
  27. $pMetadata = new PropertyMetadata('JMS\Serializer\Tests\Fixtures\ObjectWithXmlNamespaces', 'language');
  28. $pMetadata->setType('string');
  29. $pMetadata->xmlAttribute = true;
  30. $pMetadata->xmlNamespace = 'http://purl.org/dc/elements/1.1/';
  31. $metadata->addPropertyMetadata($pMetadata);
  32. return $metadata;