resync 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +42 -0
  3. data/.rubocop.yml +23 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +2 -0
  6. data/Gemfile +3 -0
  7. data/LICENSE.md +22 -0
  8. data/README.md +92 -0
  9. data/Rakefile +56 -0
  10. data/example.rb +100 -0
  11. data/lib/resync/capability_list.rb +85 -0
  12. data/lib/resync/change_dump.rb +15 -0
  13. data/lib/resync/change_dump_manifest.rb +15 -0
  14. data/lib/resync/change_list.rb +15 -0
  15. data/lib/resync/change_list_index.rb +26 -0
  16. data/lib/resync/link.rb +87 -0
  17. data/lib/resync/metadata.rb +112 -0
  18. data/lib/resync/resource.rb +72 -0
  19. data/lib/resync/resource_dump.rb +15 -0
  20. data/lib/resync/resource_dump_manifest.rb +15 -0
  21. data/lib/resync/resource_list.rb +15 -0
  22. data/lib/resync/resource_list_index.rb +15 -0
  23. data/lib/resync/shared/augmented.rb +76 -0
  24. data/lib/resync/shared/base_resource_list.rb +117 -0
  25. data/lib/resync/shared/descriptor.rb +135 -0
  26. data/lib/resync/shared/sitemap_index.rb +32 -0
  27. data/lib/resync/shared/sorted_resource_list.rb +60 -0
  28. data/lib/resync/source_description.rb +14 -0
  29. data/lib/resync/types/change.rb +14 -0
  30. data/lib/resync/types/change_frequency.rb +18 -0
  31. data/lib/resync/types.rb +6 -0
  32. data/lib/resync/version.rb +4 -0
  33. data/lib/resync/xml.rb +216 -0
  34. data/lib/resync/xml_parser.rb +65 -0
  35. data/lib/resync.rb +4 -0
  36. data/resync.gemspec +36 -0
  37. data/spec/acceptance/xml_parser_spec.rb +1049 -0
  38. data/spec/data/examples/README.md +1 -0
  39. data/spec/data/examples/example-1.xml +12 -0
  40. data/spec/data/examples/example-12.xml +25 -0
  41. data/spec/data/examples/example-13.xml +25 -0
  42. data/spec/data/examples/example-14.xml +23 -0
  43. data/spec/data/examples/example-15.xml +21 -0
  44. data/spec/data/examples/example-16.xml +24 -0
  45. data/spec/data/examples/example-17.xml +39 -0
  46. data/spec/data/examples/example-18.xml +25 -0
  47. data/spec/data/examples/example-19.xml +28 -0
  48. data/spec/data/examples/example-2.xml +18 -0
  49. data/spec/data/examples/example-20.xml +22 -0
  50. data/spec/data/examples/example-21.xml +31 -0
  51. data/spec/data/examples/example-22.xml +41 -0
  52. data/spec/data/examples/example-23.xml +41 -0
  53. data/spec/data/examples/example-24.xml +28 -0
  54. data/spec/data/examples/example-25.xml +21 -0
  55. data/spec/data/examples/example-26.xml +18 -0
  56. data/spec/data/examples/example-27.xml +36 -0
  57. data/spec/data/examples/example-28.xml +34 -0
  58. data/spec/data/examples/example-29.xml +27 -0
  59. data/spec/data/examples/example-3.xml +17 -0
  60. data/spec/data/examples/example-30.xml +18 -0
  61. data/spec/data/examples/example-31.xml +16 -0
  62. data/spec/data/examples/example-32.xml +22 -0
  63. data/spec/data/examples/example-33.xml +22 -0
  64. data/spec/data/examples/example-4.xml +10 -0
  65. data/spec/data/examples/example-5.xml +18 -0
  66. data/spec/data/examples/example-6.xml +21 -0
  67. data/spec/data/examples/example-7.xml +13 -0
  68. data/spec/data/examples/example-8.xml +12 -0
  69. data/spec/data/resourcesync.xsd +148 -0
  70. data/spec/data/siteindex.xsd +75 -0
  71. data/spec/data/sitemap.xsd +116 -0
  72. data/spec/rspec_custom_matchers.rb +89 -0
  73. data/spec/spec_helper.rb +31 -0
  74. data/spec/todo.rb +11 -0
  75. data/spec/unit/resync/capability_list_spec.rb +138 -0
  76. data/spec/unit/resync/change_dump_manifest_spec.rb +75 -0
  77. data/spec/unit/resync/change_dump_spec.rb +61 -0
  78. data/spec/unit/resync/change_list_index_spec.rb +49 -0
  79. data/spec/unit/resync/change_list_spec.rb +75 -0
  80. data/spec/unit/resync/link_spec.rb +93 -0
  81. data/spec/unit/resync/metadata_spec.rb +169 -0
  82. data/spec/unit/resync/resource_dump_manifest_spec.rb +59 -0
  83. data/spec/unit/resync/resource_dump_spec.rb +62 -0
  84. data/spec/unit/resync/resource_list_index_spec.rb +53 -0
  85. data/spec/unit/resync/resource_list_spec.rb +60 -0
  86. data/spec/unit/resync/resource_spec.rb +176 -0
  87. data/spec/unit/resync/shared/augmented_examples.rb +58 -0
  88. data/spec/unit/resync/shared/base_resource_list_examples.rb +103 -0
  89. data/spec/unit/resync/shared/descriptor_examples.rb +122 -0
  90. data/spec/unit/resync/shared/descriptor_spec.rb +33 -0
  91. data/spec/unit/resync/shared/sorted_list_examples.rb +134 -0
  92. data/spec/unit/resync/shared/uri_field_examples.rb +36 -0
  93. data/spec/unit/resync/source_description_spec.rb +55 -0
  94. data/spec/unit/resync/xml/timenode_spec.rb +48 -0
  95. data/spec/unit/resync/xml/xml_spec.rb +40 -0
  96. data/spec/unit/resync/xml_parser_spec.rb +82 -0
  97. metadata +340 -0
@@ -0,0 +1 @@
1
+ This directory contains examples from the [ResourceSync specification](http://www.openarchives.org/rs/1.0/resourcesync). (Note that examples 9-11 in the specification are not actually ResourceSync document examples, and so out of scope for our parse tests.)
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:md capability="resourcelist"
5
+ at="2013-01-03T09:00:00Z"/>
6
+ <url>
7
+ <loc>http://example.com/res1</loc>
8
+ </url>
9
+ <url>
10
+ <loc>http://example.com/res2</loc>
11
+ </url>
12
+ </urlset>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="describedby"
5
+ href="http://example.com/info_about_source.xml"/>
6
+ <rs:md capability="description"/>
7
+ <url>
8
+ <loc>http://example.com/capabilitylist1.xml</loc>
9
+ <rs:md capability="capabilitylist"/>
10
+ <rs:ln rel="describedby"
11
+ href="http://example.com/info_about_set1_of_resources.xml"/>
12
+ </url>
13
+ <url>
14
+ <loc>http://example.com/capabilitylist2.xml</loc>
15
+ <rs:md capability="capabilitylist"/>
16
+ <rs:ln rel="describedby"
17
+ href="http://example.com/info_about_set2_of_resources.xml"/>
18
+ </url>
19
+ <url>
20
+ <loc>http://example.com/capabilitylist3.xml</loc>
21
+ <rs:md capability="capabilitylist"/>
22
+ <rs:ln rel="describedby"
23
+ href="http://example.com/info_about_set3_of_resources.xml"/>
24
+ </url>
25
+ </urlset>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="describedby"
5
+ href="http://example.com/info_about_set1_of_resources.xml"/>
6
+ <rs:ln rel="up"
7
+ href="http://example.com/resourcesync_description.xml"/>
8
+ <rs:md capability="capabilitylist"/>
9
+ <url>
10
+ <loc>http://example.com/dataset1/resourcelist.xml</loc>
11
+ <rs:md capability="resourcelist"/>
12
+ </url>
13
+ <url>
14
+ <loc>http://example.com/dataset1/resourcedump.xml</loc>
15
+ <rs:md capability="resourcedump"/>
16
+ </url>
17
+ <url>
18
+ <loc>http://example.com/dataset1/changelist.xml</loc>
19
+ <rs:md capability="changelist"/>
20
+ </url>
21
+ <url>
22
+ <loc>http://example.com/dataset1/changedump.xml</loc>
23
+ <rs:md capability="changedump"/>
24
+ </url>
25
+ </urlset>
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="resourcelist"
7
+ at="2013-01-03T09:00:00Z"
8
+ completed="2013-01-03T09:01:00Z"/>
9
+ <url>
10
+ <loc>http://example.com/res1</loc>
11
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
12
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
13
+ length="8876"
14
+ type="text/html"/>
15
+ </url>
16
+ <url>
17
+ <loc>http://example.com/res2</loc>
18
+ <lastmod>2013-01-02T14:00:00Z</lastmod>
19
+ <rs:md hash="md5:1e0d5cb8ef6ba40c99b14c0237be735e sha-256:854f61290e2e197a11bc91063afce22e43f8ccc655237050ace766adc68dc784"
20
+ length="14599"
21
+ type="application/pdf"/>
22
+ </url>
23
+ </urlset>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="resourcelist"
7
+ at="2013-01-03T09:00:00Z"
8
+ completed="2013-01-03T09:10:00Z"/>
9
+ <sitemap>
10
+ <loc>http://example.com/resourcelist1.xml</loc>
11
+ <rs:md at="2013-01-03T09:00:00Z"/>
12
+ </sitemap>
13
+ <sitemap>
14
+ <loc>http://example.com/resourcelist2.xml</loc>
15
+ <rs:md at="2013-01-03T09:03:00Z"/>
16
+ </sitemap>
17
+ <sitemap>
18
+ <loc>http://example.com/resourcelist3.xml</loc>
19
+ <rs:md at="2013-01-03T09:07:00Z"/>
20
+ </sitemap>
21
+ </sitemapindex>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:ln rel="index"
7
+ href="http://example.com/dataset1/resourcelist-index.xml"/>
8
+ <rs:md capability="resourcelist"
9
+ at="2013-01-03T09:00:00Z"/>
10
+ <url>
11
+ <loc>http://example.com/res3</loc>
12
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
13
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c8753"
14
+ length="4385"
15
+ type="application/pdf"/>
16
+ </url>
17
+ <url>
18
+ <loc>http://example.com/res4</loc>
19
+ <lastmod>2013-01-02T14:00:00Z</lastmod>
20
+ <rs:md hash="md5:4556abdf8ebdc9802ac0c6a7402c9881"
21
+ length="883"
22
+ type="image/png"/>
23
+ </url>
24
+ </urlset>
@@ -0,0 +1,39 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="resourcedump"
7
+ at="2013-01-03T09:00:00Z"
8
+ completed="2013-01-03T09:04:00Z"/>
9
+ <url>
10
+ <loc>http://example.com/resourcedump-part1.zip</loc>
11
+ <rs:md type="application/zip"
12
+ length="4765"
13
+ at="2013-01-03T09:00:00Z"
14
+ completed="2013-01-03T09:02:00Z"/>
15
+ <rs:ln rel="contents"
16
+ href="http://example.com/resourcedump_manifest-part1.xml"
17
+ type="application/xml"/>
18
+ </url>
19
+ <url>
20
+ <loc>http://example.com/resourcedump-part2.zip</loc>
21
+ <rs:md type="application/zip"
22
+ length="9875"
23
+ at="2013-01-03T09:01:00Z"
24
+ completed="2013-01-03T09:03:00Z"/>
25
+ <rs:ln rel="contents"
26
+ href="http://example.com/resourcedump_manifest-part2.xml"
27
+ type="application/xml"/>
28
+ </url>
29
+ <url>
30
+ <loc>http://example.com/resourcedump-part3.zip</loc>
31
+ <rs:md type="application/zip"
32
+ length="2298"
33
+ at="2013-01-03T09:03:00Z"
34
+ completed="2013-01-03T09:04:00Z"/>
35
+ <rs:ln rel="contents"
36
+ href="http://example.com/resourcedump_manifest-part3.xml"
37
+ type="application/xml"/>
38
+ </url>
39
+ </urlset>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="resourcedump-manifest"
7
+ at="2013-01-03T09:00:00Z"
8
+ completed="2013-01-03T09:02:00Z"/>
9
+ <url>
10
+ <loc>http://example.com/res1</loc>
11
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
12
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
13
+ length="8876"
14
+ type="text/html"
15
+ path="/resources/res1"/>
16
+ </url>
17
+ <url>
18
+ <loc>http://example.com/res2</loc>
19
+ <lastmod>2013-01-02T14:00:00Z</lastmod>
20
+ <rs:md hash="md5:1e0d5cb8ef6ba40c99b14c0237be735e sha-256:854f61290e2e197a11bc91063afce22e43f8ccc655237050ace766adc68dc784"
21
+ length="14599"
22
+ type="application/pdf"
23
+ path="/resources/res2"/>
24
+ </url>
25
+ </urlset>
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1.html</loc>
10
+ <lastmod>2013-01-03T11:00:00Z</lastmod>
11
+ <rs:md change="created"/>
12
+ </url>
13
+ <url>
14
+ <loc>http://example.com/res2.pdf</loc>
15
+ <lastmod>2013-01-03T13:00:00Z</lastmod>
16
+ <rs:md change="updated"/>
17
+ </url>
18
+ <url>
19
+ <loc>http://example.com/res3.tiff</loc>
20
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
21
+ <rs:md change="deleted"/>
22
+ </url>
23
+ <url>
24
+ <loc>http://example.com/res2.pdf</loc>
25
+ <lastmod>2013-01-03T21:00:00Z</lastmod>
26
+ <rs:md change="updated"/>
27
+ </url>
28
+ </urlset>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:md capability="resourcelist"
5
+ at="2013-01-03T09:00:00Z"/>
6
+ <url>
7
+ <loc>http://example.com/res1</loc>
8
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
9
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"/>
10
+ </url>
11
+ <url>
12
+ <loc>http://example.com/res2</loc>
13
+ <lastmod>2013-01-02T14:00:00Z</lastmod>
14
+ <rs:md hash="md5:1e0d5cb8ef6ba40c99b14c0237be735e"/>
15
+ <rs:ln rel="duplicate"
16
+ href="http://mirror.example.com/res2"/>
17
+ </url>
18
+ </urlset>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-01T00:00:00Z"/>
8
+ <sitemap>
9
+ <loc>http://example.com/20130101-changelist.xml</loc>
10
+ <rs:md from="2013-01-01T00:00:00Z"
11
+ until="2013-01-02T00:00:00Z"/>
12
+ </sitemap>
13
+ <sitemap>
14
+ <loc>http://example.com/20130102-changelist.xml</loc>
15
+ <rs:md from="2013-01-02T00:00:00Z"
16
+ until="2013-01-03T00:00:00Z"/>
17
+ </sitemap>
18
+ <sitemap>
19
+ <loc>http://example.com/20130103-changelist.xml</loc>
20
+ <rs:md from="2013-01-03T00:00:00Z"/>
21
+ </sitemap>
22
+ </sitemapindex>
@@ -0,0 +1,31 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:ln rel="index"
7
+ href="http://example.com/dataset1/changelist.xml"/>
8
+ <rs:md capability="changelist"
9
+ from="2013-01-02T00:00:00Z"
10
+ until="2013-01-03T00:00:00Z"/>
11
+ <url>
12
+ <loc>http://example.com/res7.html</loc>
13
+ <lastmod>2013-01-02T12:00:00Z</lastmod>
14
+ <rs:md change="created"/>
15
+ </url>
16
+ <url>
17
+ <loc>http://example.com/res9.pdf</loc>
18
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
19
+ <rs:md change="updated"/>
20
+ </url>
21
+ <url>
22
+ <loc>http://example.com/res5.tiff</loc>
23
+ <lastmod>2013-01-02T19:00:00Z</lastmod>
24
+ <rs:md change="deleted"/>
25
+ </url>
26
+ <url>
27
+ <loc>http://example.com/res7.html</loc>
28
+ <lastmod>2013-01-02T20:00:00Z</lastmod>
29
+ <rs:md change="updated"/>
30
+ </url>
31
+ </urlset>
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changedump"
7
+ from="2013-01-01T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/20130101-changedump.zip</loc>
10
+ <lastmod>2013-01-01T23:59:59Z</lastmod>
11
+ <rs:md type="application/zip"
12
+ length="3109"
13
+ from="2013-01-01T00:00:00Z"
14
+ until="2013-01-02T00:00:00Z"/>
15
+ <rs:ln rel="contents"
16
+ href="http://example.com/20130101-changedump-manifest.xml"
17
+ type="application/xml"/>
18
+ </url>
19
+ <url>
20
+ <loc>http://example.com/20130102-changedump.zip</loc>
21
+ <lastmod>2013-01-02T23:59:59Z</lastmod>
22
+ <rs:md type="application/zip"
23
+ length="6629"
24
+ from="2013-01-02T00:00:00Z"
25
+ until="2013-01-03T00:00:00Z"/>
26
+ <rs:ln rel="contents"
27
+ href="http://example.com/20130102-changedump-manifest.xml"
28
+ type="application/xml"/>
29
+ </url>
30
+ <url>
31
+ <loc>http://example.com/20130103-changedump.zip</loc>
32
+ <lastmod>2013-01-03T23:59:59Z</lastmod>
33
+ <rs:md type="application/zip"
34
+ length="8124"
35
+ from="2013-01-03T00:00:00Z"
36
+ until="2013-01-04T00:00:00Z"/>
37
+ <rs:ln rel="contents"
38
+ href="http://example.com/20130103-changedump-manifest.xml"
39
+ type="application/xml"/>
40
+ </url>
41
+ </urlset>
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changedump-manifest"
7
+ from="2013-01-02T00:00:00Z"
8
+ until="2013-01-03T00:00:00Z"/>
9
+ <url>
10
+ <loc>http://example.com/res7.html</loc>
11
+ <lastmod>2013-01-02T12:00:00Z</lastmod>
12
+ <rs:md change="created"
13
+ hash="md5:1c1b0e264fa9b7e1e9aa6f9db8d6362b"
14
+ length="4339"
15
+ type="text/html"
16
+ path="/changes/res7.html"/>
17
+ </url>
18
+ <url>
19
+ <loc>http://example.com/res9.pdf</loc>
20
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
21
+ <rs:md change="updated"
22
+ hash="md5:f906610c3d4aa745cb2b986f25b37c5a"
23
+ length="38297"
24
+ type="application/pdf"
25
+ path="/changes/res9.pdf"/>
26
+ </url>
27
+ <url>
28
+ <loc>http://example.com/res5.tiff</loc>
29
+ <lastmod>2013-01-02T19:00:00Z</lastmod>
30
+ <rs:md change="deleted"/>
31
+ </url>
32
+ <url>
33
+ <loc>http://example.com/res7.html</loc>
34
+ <lastmod>2013-01-02T20:00:00Z</lastmod>
35
+ <rs:md change="updated"
36
+ hash="md5:0988647082c8bc51778894a48ec3b576"
37
+ length="5426"
38
+ type="text/html"
39
+ path="/changes/res7-v2.html"/>
40
+ </url>
41
+ </urlset>
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1</loc>
10
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
11
+ <rs:md change="updated"
12
+ hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
13
+ length="8876"
14
+ type="text/html"/>
15
+ <rs:ln rel="duplicate"
16
+ pri="1"
17
+ href="http://mirror1.example.com/res1"
18
+ modified="2013-01-03T18:00:00Z"/>
19
+ <rs:ln rel="duplicate"
20
+ pri="2"
21
+ href="http://mirror2.example.com/res1"
22
+ modified="2013-01-03T18:00:00Z"/>
23
+ <rs:ln rel="duplicate"
24
+ pri="3"
25
+ href="gsiftp://gridftp.example.com/res1"
26
+ modified="2013-01-03T18:00:00Z"/>
27
+ </url>
28
+ </urlset>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T11:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1</loc>
10
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
11
+ <rs:md change="updated"/>
12
+ <rs:ln rel="alternate"
13
+ href="http://example.com/res1.html"
14
+ modified="2013-01-03T18:00:00Z"
15
+ type="text/html"/>
16
+ <rs:ln rel="alternate"
17
+ href="http://example.com/res1.pdf"
18
+ modified="2013-01-03T18:00:00Z"
19
+ type="application/pdf"/>
20
+ </url>
21
+ </urlset>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1.html</loc>
10
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
11
+ <rs:md change="updated"
12
+ hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
13
+ length="8876"/>
14
+ <rs:ln rel="canonical"
15
+ href="http://example.com/res1"
16
+ modified="2013-01-03T18:00:00Z"/>
17
+ </url>
18
+ </urlset>
@@ -0,0 +1,36 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res4</loc>
10
+ <lastmod>2013-01-03T17:00:00Z</lastmod>
11
+ <rs:md change="updated"
12
+ hash="sha-256:f4OxZX_x_DFGFDgghgdfb6rtSx-iosjf6735432nklj"
13
+ length="56778"
14
+ type="application/json"/>
15
+ <rs:ln rel="http://www.openarchives.org/rs/terms/patch"
16
+ href="http://example.com/res4-json-patch"
17
+ modified="2013-01-03T17:00:00Z"
18
+ hash="sha-256:y66dER_t_HWEIKpesdkeb7rtSc-ippjf9823742opld"
19
+ length="73"
20
+ type="application/json-patch"/>
21
+ </url>
22
+ <url>
23
+ <loc>http://example.com/res5-full.tiff</loc>
24
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
25
+ <rs:md change="updated"
26
+ hash="sha-256:f4OxZX_x_FO5LcGBSKHWXfwtSx-j1ncoSt3SABJtkGk"
27
+ length="9788456778"
28
+ type="image/tiff"/>
29
+ <rs:ln rel="http://www.openarchives.org/rs/terms/patch"
30
+ href="http://example.com/res5-diff"
31
+ modified="2013-01-03T18:00:00Z"
32
+ hash="sha-256:h986gT_t_87HTkjHYE76G558hY-jdfgy76t55sadJUYT"
33
+ length="4533"
34
+ type="application/x-tiff-diff"/>
35
+ </url>
36
+ </urlset>
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res2.pdf</loc>
10
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
11
+ <rs:md change="updated"
12
+ hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
13
+ length="8876"
14
+ type="application/pdf"/>
15
+ <rs:ln rel="describedby"
16
+ href="http://example.com/res2_dublin-core_metadata.xml"
17
+ modified="2013-01-01T12:00:00Z"
18
+ type="application/xml"/>
19
+ </url>
20
+ <url>
21
+ <loc>http://example.com/res2_dublin-core_metadata.xml</loc>
22
+ <lastmod>2013-01-03T19:00:00Z</lastmod>
23
+ <rs:md change="updated"
24
+ type="application/xml"/>
25
+ <rs:ln rel="describes"
26
+ href="http://example.com/res2.pdf"
27
+ modified="2013-01-03T18:00:00Z"
28
+ hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
29
+ length="8876"
30
+ type="application/pdf"/>
31
+ <rs:ln rel="profile"
32
+ href="http://purl.org/dc/elements/1.1/"/>
33
+ </url>
34
+ </urlset>
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1</loc>
10
+ <lastmod>2013-01-03T18:00:00Z</lastmod>
11
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
12
+ length="8876"
13
+ type="text/html"
14
+ change="updated"/>
15
+ <rs:ln rel="memento"
16
+ href="http://example.com/20130103070000/res1"
17
+ modified="2013-01-02T18:00:00Z"
18
+ hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
19
+ length="8876"
20
+ type="text/html"/>
21
+ <rs:ln rel="timegate"
22
+ href="http://example.com/timegate/http://example.com/res1"/>
23
+ <rs:ln rel="timemap"
24
+ href="http://example.com/timemap/http://example.com/res1"
25
+ type="application/link-format"/>
26
+ </url>
27
+ </urlset>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:md capability="changelist"
5
+ from="2013-01-02T00:00:00Z"
6
+ until="2013-01-03T00:00:00Z"/>
7
+ <url>
8
+ <loc>http://example.com/res2.pdf</loc>
9
+ <lastmod>2013-01-02T13:00:00Z</lastmod>
10
+ <rs:md change="updated"/>
11
+ </url>
12
+ <url>
13
+ <loc>http://example.com/res3.tiff</loc>
14
+ <lastmod>2013-01-02T18:00:00Z</lastmod>
15
+ <rs:md change="deleted"/>
16
+ </url>
17
+ </urlset>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://example.com/res1</loc>
10
+ <lastmod>2013-01-03T07:00:00Z</lastmod>
11
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
12
+ length="8876"
13
+ type="text/html"
14
+ change="updated"/>
15
+ <rs:ln rel="collection"
16
+ href="http://example.com/aggregation/0601007"/>
17
+ </url>
18
+ </urlset>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
3
+ xmlns:rs="http://www.openarchives.org/rs/terms/">
4
+ <rs:ln rel="up"
5
+ href="http://example.com/dataset1/capabilitylist.xml"/>
6
+ <rs:md capability="changelist"
7
+ from="2013-01-03T00:00:00Z"/>
8
+ <url>
9
+ <loc>http://original.example.com/res1.html</loc>
10
+ <lastmod>2013-01-03T07:00:00Z</lastmod>
11
+ <rs:md hash="md5:1584abdf8ebdc9802ac0c6a7402c03b6"
12
+ length="8876"
13
+ type="text/html"
14
+ change="updated"/>
15
+ </url>
16
+ </urlset>