nokogiri 1.0.0 → 1.6.8.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of nokogiri might be problematic. Click here for more details.

Files changed (309) hide show
  1. checksums.yaml +7 -0
  2. data/.autotest +26 -0
  3. data/.cross_rubies +9 -0
  4. data/.editorconfig +17 -0
  5. data/.gemtest +0 -0
  6. data/.travis.yml +51 -0
  7. data/CHANGELOG.rdoc +1160 -0
  8. data/CONTRIBUTING.md +42 -0
  9. data/C_CODING_STYLE.rdoc +33 -0
  10. data/Gemfile +22 -0
  11. data/LICENSE.txt +31 -0
  12. data/Manifest.txt +284 -40
  13. data/README.md +166 -0
  14. data/ROADMAP.md +111 -0
  15. data/Rakefile +310 -199
  16. data/STANDARD_RESPONSES.md +47 -0
  17. data/Y_U_NO_GEMSPEC.md +155 -0
  18. data/appveyor.yml +22 -0
  19. data/bin/nokogiri +118 -0
  20. data/build_all +45 -0
  21. data/dependencies.yml +29 -0
  22. data/ext/nokogiri/depend +358 -0
  23. data/ext/nokogiri/extconf.rb +664 -34
  24. data/ext/nokogiri/html_document.c +120 -33
  25. data/ext/nokogiri/html_document.h +1 -1
  26. data/ext/nokogiri/html_element_description.c +279 -0
  27. data/ext/nokogiri/html_element_description.h +10 -0
  28. data/ext/nokogiri/html_entity_lookup.c +32 -0
  29. data/ext/nokogiri/html_entity_lookup.h +8 -0
  30. data/ext/nokogiri/html_sax_parser_context.c +116 -0
  31. data/ext/nokogiri/html_sax_parser_context.h +11 -0
  32. data/ext/nokogiri/html_sax_push_parser.c +87 -0
  33. data/ext/nokogiri/html_sax_push_parser.h +9 -0
  34. data/ext/nokogiri/nokogiri.c +145 -0
  35. data/ext/nokogiri/nokogiri.h +131 -0
  36. data/ext/nokogiri/xml_attr.c +94 -0
  37. data/ext/nokogiri/xml_attr.h +9 -0
  38. data/ext/nokogiri/xml_attribute_decl.c +70 -0
  39. data/ext/nokogiri/xml_attribute_decl.h +9 -0
  40. data/ext/nokogiri/xml_cdata.c +23 -19
  41. data/ext/nokogiri/xml_cdata.h +1 -1
  42. data/ext/nokogiri/xml_comment.c +69 -0
  43. data/ext/nokogiri/xml_comment.h +9 -0
  44. data/ext/nokogiri/xml_document.c +501 -54
  45. data/ext/nokogiri/xml_document.h +14 -1
  46. data/ext/nokogiri/xml_document_fragment.c +48 -0
  47. data/ext/nokogiri/xml_document_fragment.h +10 -0
  48. data/ext/nokogiri/xml_dtd.c +109 -24
  49. data/ext/nokogiri/xml_dtd.h +3 -1
  50. data/ext/nokogiri/xml_element_content.c +123 -0
  51. data/ext/nokogiri/xml_element_content.h +10 -0
  52. data/ext/nokogiri/xml_element_decl.c +69 -0
  53. data/ext/nokogiri/xml_element_decl.h +9 -0
  54. data/ext/nokogiri/xml_encoding_handler.c +79 -0
  55. data/ext/nokogiri/xml_encoding_handler.h +8 -0
  56. data/ext/nokogiri/xml_entity_decl.c +110 -0
  57. data/ext/nokogiri/xml_entity_decl.h +10 -0
  58. data/ext/nokogiri/xml_entity_reference.c +52 -0
  59. data/ext/nokogiri/xml_entity_reference.h +9 -0
  60. data/ext/nokogiri/xml_io.c +60 -0
  61. data/ext/nokogiri/xml_io.h +11 -0
  62. data/ext/nokogiri/xml_libxml2_hacks.c +112 -0
  63. data/ext/nokogiri/xml_libxml2_hacks.h +12 -0
  64. data/ext/nokogiri/xml_namespace.c +117 -0
  65. data/ext/nokogiri/xml_namespace.h +13 -0
  66. data/ext/nokogiri/xml_node.c +1285 -315
  67. data/ext/nokogiri/xml_node.h +4 -6
  68. data/ext/nokogiri/xml_node_set.c +415 -54
  69. data/ext/nokogiri/xml_node_set.h +6 -2
  70. data/ext/nokogiri/xml_processing_instruction.c +56 -0
  71. data/ext/nokogiri/xml_processing_instruction.h +9 -0
  72. data/ext/nokogiri/xml_reader.c +316 -77
  73. data/ext/nokogiri/xml_reader.h +1 -1
  74. data/ext/nokogiri/xml_relax_ng.c +161 -0
  75. data/ext/nokogiri/xml_relax_ng.h +9 -0
  76. data/ext/nokogiri/xml_sax_parser.c +215 -80
  77. data/ext/nokogiri/xml_sax_parser.h +30 -1
  78. data/ext/nokogiri/xml_sax_parser_context.c +262 -0
  79. data/ext/nokogiri/xml_sax_parser_context.h +10 -0
  80. data/ext/nokogiri/xml_sax_push_parser.c +115 -0
  81. data/ext/nokogiri/xml_sax_push_parser.h +9 -0
  82. data/ext/nokogiri/xml_schema.c +205 -0
  83. data/ext/nokogiri/xml_schema.h +9 -0
  84. data/ext/nokogiri/xml_syntax_error.c +45 -175
  85. data/ext/nokogiri/xml_syntax_error.h +4 -2
  86. data/ext/nokogiri/xml_text.c +37 -14
  87. data/ext/nokogiri/xml_text.h +1 -1
  88. data/ext/nokogiri/xml_xpath_context.c +230 -13
  89. data/ext/nokogiri/xml_xpath_context.h +2 -1
  90. data/ext/nokogiri/xslt_stylesheet.c +196 -34
  91. data/ext/nokogiri/xslt_stylesheet.h +6 -1
  92. data/lib/nokogiri/css/node.rb +18 -61
  93. data/lib/nokogiri/css/parser.rb +725 -17
  94. data/lib/nokogiri/css/parser.y +126 -63
  95. data/lib/nokogiri/css/parser_extras.rb +91 -0
  96. data/lib/nokogiri/css/syntax_error.rb +7 -0
  97. data/lib/nokogiri/css/tokenizer.rb +148 -5
  98. data/lib/nokogiri/css/tokenizer.rex +31 -39
  99. data/lib/nokogiri/css/xpath_visitor.rb +109 -51
  100. data/lib/nokogiri/css.rb +24 -3
  101. data/lib/nokogiri/decorators/slop.rb +42 -0
  102. data/lib/nokogiri/html/builder.rb +27 -1
  103. data/lib/nokogiri/html/document.rb +329 -3
  104. data/lib/nokogiri/html/document_fragment.rb +39 -0
  105. data/lib/nokogiri/html/element_description.rb +23 -0
  106. data/lib/nokogiri/html/element_description_defaults.rb +671 -0
  107. data/lib/nokogiri/html/entity_lookup.rb +13 -0
  108. data/lib/nokogiri/html/sax/parser.rb +35 -4
  109. data/lib/nokogiri/html/sax/parser_context.rb +16 -0
  110. data/lib/nokogiri/html/sax/push_parser.rb +36 -0
  111. data/lib/nokogiri/html.rb +18 -76
  112. data/lib/nokogiri/syntax_error.rb +4 -0
  113. data/lib/nokogiri/version.rb +106 -1
  114. data/lib/nokogiri/xml/attr.rb +14 -0
  115. data/lib/nokogiri/xml/attribute_decl.rb +18 -0
  116. data/lib/nokogiri/xml/builder.rb +395 -31
  117. data/lib/nokogiri/xml/cdata.rb +4 -2
  118. data/lib/nokogiri/xml/character_data.rb +7 -0
  119. data/lib/nokogiri/xml/document.rb +267 -12
  120. data/lib/nokogiri/xml/document_fragment.rb +149 -0
  121. data/lib/nokogiri/xml/dtd.rb +27 -1
  122. data/lib/nokogiri/xml/element_content.rb +36 -0
  123. data/lib/nokogiri/xml/element_decl.rb +13 -0
  124. data/lib/nokogiri/xml/entity_decl.rb +19 -0
  125. data/lib/nokogiri/xml/namespace.rb +13 -0
  126. data/lib/nokogiri/xml/node/save_options.rb +61 -0
  127. data/lib/nokogiri/xml/node.rb +748 -109
  128. data/lib/nokogiri/xml/node_set.rb +200 -72
  129. data/lib/nokogiri/xml/parse_options.rb +120 -0
  130. data/lib/nokogiri/xml/pp/character_data.rb +18 -0
  131. data/lib/nokogiri/xml/pp/node.rb +56 -0
  132. data/lib/nokogiri/xml/pp.rb +2 -0
  133. data/lib/nokogiri/xml/processing_instruction.rb +8 -0
  134. data/lib/nokogiri/xml/reader.rb +102 -4
  135. data/lib/nokogiri/xml/relax_ng.rb +32 -0
  136. data/lib/nokogiri/xml/sax/document.rb +114 -2
  137. data/lib/nokogiri/xml/sax/parser.rb +97 -7
  138. data/lib/nokogiri/xml/sax/parser_context.rb +16 -0
  139. data/lib/nokogiri/xml/sax/push_parser.rb +60 -0
  140. data/lib/nokogiri/xml/sax.rb +2 -7
  141. data/lib/nokogiri/xml/schema.rb +63 -0
  142. data/lib/nokogiri/xml/searchable.rb +221 -0
  143. data/lib/nokogiri/xml/syntax_error.rb +27 -1
  144. data/lib/nokogiri/xml/text.rb +4 -1
  145. data/lib/nokogiri/xml/xpath/syntax_error.rb +11 -0
  146. data/lib/nokogiri/xml/xpath.rb +4 -0
  147. data/lib/nokogiri/xml/xpath_context.rb +3 -1
  148. data/lib/nokogiri/xml.rb +45 -38
  149. data/lib/nokogiri/xslt/stylesheet.rb +19 -0
  150. data/lib/nokogiri/xslt.rb +47 -2
  151. data/lib/nokogiri.rb +117 -24
  152. data/lib/xsd/xmlparser/nokogiri.rb +102 -0
  153. data/patches/sort-patches-by-date +25 -0
  154. data/ports/archives/libxml2-2.9.4.tar.gz +0 -0
  155. data/ports/archives/libxslt-1.1.29.tar.gz +0 -0
  156. data/suppressions/README.txt +1 -0
  157. data/suppressions/nokogiri_ree-1.8.7.358.supp +61 -0
  158. data/suppressions/nokogiri_ruby-1.8.7.370.supp +0 -0
  159. data/suppressions/nokogiri_ruby-1.9.2.320.supp +28 -0
  160. data/suppressions/nokogiri_ruby-1.9.3.327.supp +28 -0
  161. data/tasks/test.rb +100 -0
  162. data/test/css/test_nthiness.rb +73 -6
  163. data/test/css/test_parser.rb +184 -39
  164. data/test/css/test_tokenizer.rb +72 -19
  165. data/test/css/test_xpath_visitor.rb +44 -2
  166. data/test/decorators/test_slop.rb +20 -0
  167. data/test/files/2ch.html +108 -0
  168. data/test/files/GH_1042.html +18 -0
  169. data/test/files/address_book.rlx +12 -0
  170. data/test/files/address_book.xml +10 -0
  171. data/test/files/atom.xml +344 -0
  172. data/test/files/bar/bar.xsd +4 -0
  173. data/test/files/bogus.xml +0 -0
  174. data/test/files/dont_hurt_em_why.xml +422 -0
  175. data/test/files/encoding.html +82 -0
  176. data/test/files/encoding.xhtml +84 -0
  177. data/test/files/exslt.xml +8 -0
  178. data/test/files/exslt.xslt +35 -0
  179. data/test/files/foo/foo.xsd +4 -0
  180. data/test/files/metacharset.html +10 -0
  181. data/test/files/namespace_pressure_test.xml +1684 -0
  182. data/test/files/noencoding.html +47 -0
  183. data/test/files/po.xml +32 -0
  184. data/test/files/po.xsd +66 -0
  185. data/test/files/saml/saml20assertion_schema.xsd +283 -0
  186. data/test/files/saml/saml20protocol_schema.xsd +302 -0
  187. data/test/files/saml/xenc_schema.xsd +146 -0
  188. data/test/files/saml/xmldsig_schema.xsd +318 -0
  189. data/test/files/shift_jis.html +10 -0
  190. data/test/files/shift_jis.xml +5 -0
  191. data/test/files/shift_jis_no_charset.html +9 -0
  192. data/test/files/slow-xpath.xml +25509 -0
  193. data/test/files/snuggles.xml +3 -0
  194. data/test/files/staff.dtd +10 -0
  195. data/test/files/test_document_url/bar.xml +2 -0
  196. data/test/files/test_document_url/document.dtd +4 -0
  197. data/test/files/test_document_url/document.xml +6 -0
  198. data/test/files/tlm.html +2 -1
  199. data/test/files/to_be_xincluded.xml +2 -0
  200. data/test/files/valid_bar.xml +2 -0
  201. data/test/files/xinclude.xml +4 -0
  202. data/test/helper.rb +124 -13
  203. data/test/html/sax/test_parser.rb +118 -4
  204. data/test/html/sax/test_parser_context.rb +46 -0
  205. data/test/html/sax/test_push_parser.rb +87 -0
  206. data/test/html/test_builder.rb +94 -8
  207. data/test/html/test_document.rb +626 -11
  208. data/test/html/test_document_encoding.rb +145 -0
  209. data/test/html/test_document_fragment.rb +301 -0
  210. data/test/html/test_element_description.rb +105 -0
  211. data/test/html/test_named_characters.rb +14 -0
  212. data/test/html/test_node.rb +212 -0
  213. data/test/html/test_node_encoding.rb +85 -0
  214. data/test/namespaces/test_additional_namespaces_in_builder_doc.rb +14 -0
  215. data/test/namespaces/test_namespaces_aliased_default.rb +24 -0
  216. data/test/namespaces/test_namespaces_in_builder_doc.rb +75 -0
  217. data/test/namespaces/test_namespaces_in_cloned_doc.rb +31 -0
  218. data/test/namespaces/test_namespaces_in_created_doc.rb +75 -0
  219. data/test/namespaces/test_namespaces_in_parsed_doc.rb +80 -0
  220. data/test/namespaces/test_namespaces_preservation.rb +31 -0
  221. data/test/test_convert_xpath.rb +2 -47
  222. data/test/test_css_cache.rb +45 -0
  223. data/test/test_encoding_handler.rb +48 -0
  224. data/test/test_memory_leak.rb +156 -0
  225. data/test/test_nokogiri.rb +103 -1
  226. data/test/test_soap4r_sax.rb +52 -0
  227. data/test/test_xslt_transforms.rb +293 -8
  228. data/test/xml/node/test_save_options.rb +28 -0
  229. data/test/xml/node/test_subclass.rb +44 -0
  230. data/test/xml/sax/test_parser.rb +309 -8
  231. data/test/xml/sax/test_parser_context.rb +115 -0
  232. data/test/xml/sax/test_push_parser.rb +157 -0
  233. data/test/xml/test_attr.rb +67 -0
  234. data/test/xml/test_attribute_decl.rb +86 -0
  235. data/test/xml/test_builder.rb +327 -2
  236. data/test/xml/test_c14n.rb +180 -0
  237. data/test/xml/test_cdata.rb +32 -2
  238. data/test/xml/test_comment.rb +40 -0
  239. data/test/xml/test_document.rb +846 -35
  240. data/test/xml/test_document_encoding.rb +31 -0
  241. data/test/xml/test_document_fragment.rb +271 -0
  242. data/test/xml/test_dtd.rb +153 -9
  243. data/test/xml/test_dtd_encoding.rb +31 -0
  244. data/test/xml/test_element_content.rb +56 -0
  245. data/test/xml/test_element_decl.rb +73 -0
  246. data/test/xml/test_entity_decl.rb +122 -0
  247. data/test/xml/test_entity_reference.rb +251 -0
  248. data/test/xml/test_namespace.rb +96 -0
  249. data/test/xml/test_node.rb +1126 -105
  250. data/test/xml/test_node_attributes.rb +115 -0
  251. data/test/xml/test_node_encoding.rb +69 -0
  252. data/test/xml/test_node_inheritance.rb +32 -0
  253. data/test/xml/test_node_reparenting.rb +549 -0
  254. data/test/xml/test_node_set.rb +668 -9
  255. data/test/xml/test_parse_options.rb +64 -0
  256. data/test/xml/test_processing_instruction.rb +30 -0
  257. data/test/xml/test_reader.rb +589 -0
  258. data/test/xml/test_reader_encoding.rb +134 -0
  259. data/test/xml/test_relax_ng.rb +60 -0
  260. data/test/xml/test_schema.rb +142 -0
  261. data/test/xml/test_syntax_error.rb +30 -0
  262. data/test/xml/test_text.rb +49 -2
  263. data/test/xml/test_unparented_node.rb +440 -0
  264. data/test/xml/test_xinclude.rb +83 -0
  265. data/test/xml/test_xpath.rb +445 -0
  266. data/test/xslt/test_custom_functions.rb +133 -0
  267. data/test/xslt/test_exception_handling.rb +37 -0
  268. data/test_all +107 -0
  269. metadata +459 -115
  270. data/History.txt +0 -6
  271. data/README.ja.txt +0 -86
  272. data/README.txt +0 -87
  273. data/ext/nokogiri/html_sax_parser.c +0 -32
  274. data/ext/nokogiri/html_sax_parser.h +0 -11
  275. data/ext/nokogiri/native.c +0 -40
  276. data/ext/nokogiri/native.h +0 -51
  277. data/ext/nokogiri/xml_xpath.c +0 -46
  278. data/ext/nokogiri/xml_xpath.h +0 -11
  279. data/lib/nokogiri/css/generated_parser.rb +0 -653
  280. data/lib/nokogiri/css/generated_tokenizer.rb +0 -159
  281. data/lib/nokogiri/decorators/hpricot/node.rb +0 -58
  282. data/lib/nokogiri/decorators/hpricot/node_set.rb +0 -14
  283. data/lib/nokogiri/decorators/hpricot/xpath_visitor.rb +0 -17
  284. data/lib/nokogiri/decorators/hpricot.rb +0 -3
  285. data/lib/nokogiri/decorators.rb +0 -1
  286. data/lib/nokogiri/hpricot.rb +0 -47
  287. data/lib/nokogiri/xml/after_handler.rb +0 -18
  288. data/lib/nokogiri/xml/before_handler.rb +0 -32
  289. data/lib/nokogiri/xml/element.rb +0 -6
  290. data/lib/nokogiri/xml/entity_declaration.rb +0 -9
  291. data/nokogiri.gemspec +0 -34
  292. data/test/hpricot/files/basic.xhtml +0 -17
  293. data/test/hpricot/files/boingboing.html +0 -2266
  294. data/test/hpricot/files/cy0.html +0 -3653
  295. data/test/hpricot/files/immob.html +0 -400
  296. data/test/hpricot/files/pace_application.html +0 -1320
  297. data/test/hpricot/files/tenderlove.html +0 -16
  298. data/test/hpricot/files/uswebgen.html +0 -220
  299. data/test/hpricot/files/utf8.html +0 -1054
  300. data/test/hpricot/files/week9.html +0 -1723
  301. data/test/hpricot/files/why.xml +0 -19
  302. data/test/hpricot/load_files.rb +0 -7
  303. data/test/hpricot/test_alter.rb +0 -67
  304. data/test/hpricot/test_builder.rb +0 -27
  305. data/test/hpricot/test_parser.rb +0 -423
  306. data/test/hpricot/test_paths.rb +0 -15
  307. data/test/hpricot/test_preserved.rb +0 -78
  308. data/test/hpricot/test_xml.rb +0 -30
  309. data/test/test_reader.rb +0 -222
@@ -0,0 +1,302 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <schema
3
+ targetNamespace="urn:oasis:names:tc:SAML:2.0:protocol"
4
+ xmlns="http://www.w3.org/2001/XMLSchema"
5
+ xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
6
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
7
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
8
+ elementFormDefault="unqualified"
9
+ attributeFormDefault="unqualified"
10
+ blockDefault="substitution"
11
+ version="2.0">
12
+ <import namespace="urn:oasis:names:tc:SAML:2.0:assertion"
13
+ schemaLocation="saml20assertion_schema.xsd"/>
14
+ <import namespace="http://www.w3.org/2000/09/xmldsig#"
15
+ schemaLocation="xmldsig_schema.xsd"/>
16
+ <annotation>
17
+ <documentation>
18
+ Document identifier: saml-schema-protocol-2.0
19
+ Location: http://docs.oasis-open.org/security/saml/v2.0/
20
+ Revision history:
21
+ V1.0 (November, 2002):
22
+ Initial Standard Schema.
23
+ V1.1 (September, 2003):
24
+ Updates within the same V1.0 namespace.
25
+ V2.0 (March, 2005):
26
+ New protocol schema based in a SAML V2.0 namespace.
27
+ </documentation>
28
+ </annotation>
29
+ <complexType name="RequestAbstractType" abstract="true">
30
+ <sequence>
31
+ <element ref="saml:Issuer" minOccurs="0"/>
32
+ <element ref="ds:Signature" minOccurs="0"/>
33
+ <element ref="samlp:Extensions" minOccurs="0"/>
34
+ </sequence>
35
+ <attribute name="ID" type="ID" use="required"/>
36
+ <attribute name="Version" type="string" use="required"/>
37
+ <attribute name="IssueInstant" type="dateTime" use="required"/>
38
+ <attribute name="Destination" type="anyURI" use="optional"/>
39
+ <attribute name="Consent" type="anyURI" use="optional"/>
40
+ </complexType>
41
+ <element name="Extensions" type="samlp:ExtensionsType"/>
42
+ <complexType name="ExtensionsType">
43
+ <sequence>
44
+ <any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
45
+ </sequence>
46
+ </complexType>
47
+ <complexType name="StatusResponseType">
48
+ <sequence>
49
+ <element ref="saml:Issuer" minOccurs="0"/>
50
+ <element ref="ds:Signature" minOccurs="0"/>
51
+ <element ref="samlp:Extensions" minOccurs="0"/>
52
+ <element ref="samlp:Status"/>
53
+ </sequence>
54
+ <attribute name="ID" type="ID" use="required"/>
55
+ <attribute name="InResponseTo" type="NCName" use="optional"/>
56
+ <attribute name="Version" type="string" use="required"/>
57
+ <attribute name="IssueInstant" type="dateTime" use="required"/>
58
+ <attribute name="Destination" type="anyURI" use="optional"/>
59
+ <attribute name="Consent" type="anyURI" use="optional"/>
60
+ </complexType>
61
+ <element name="Status" type="samlp:StatusType"/>
62
+ <complexType name="StatusType">
63
+ <sequence>
64
+ <element ref="samlp:StatusCode"/>
65
+ <element ref="samlp:StatusMessage" minOccurs="0"/>
66
+ <element ref="samlp:StatusDetail" minOccurs="0"/>
67
+ </sequence>
68
+ </complexType>
69
+ <element name="StatusCode" type="samlp:StatusCodeType"/>
70
+ <complexType name="StatusCodeType">
71
+ <sequence>
72
+ <element ref="samlp:StatusCode" minOccurs="0"/>
73
+ </sequence>
74
+ <attribute name="Value" type="anyURI" use="required"/>
75
+ </complexType>
76
+ <element name="StatusMessage" type="string"/>
77
+ <element name="StatusDetail" type="samlp:StatusDetailType"/>
78
+ <complexType name="StatusDetailType">
79
+ <sequence>
80
+ <any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
81
+ </sequence>
82
+ </complexType>
83
+ <element name="AssertionIDRequest" type="samlp:AssertionIDRequestType"/>
84
+ <complexType name="AssertionIDRequestType">
85
+ <complexContent>
86
+ <extension base="samlp:RequestAbstractType">
87
+ <sequence>
88
+ <element ref="saml:AssertionIDRef" maxOccurs="unbounded"/>
89
+ </sequence>
90
+ </extension>
91
+ </complexContent>
92
+ </complexType>
93
+ <element name="SubjectQuery" type="samlp:SubjectQueryAbstractType"/>
94
+ <complexType name="SubjectQueryAbstractType" abstract="true">
95
+ <complexContent>
96
+ <extension base="samlp:RequestAbstractType">
97
+ <sequence>
98
+ <element ref="saml:Subject"/>
99
+ </sequence>
100
+ </extension>
101
+ </complexContent>
102
+ </complexType>
103
+ <element name="AuthnQuery" type="samlp:AuthnQueryType"/>
104
+ <complexType name="AuthnQueryType">
105
+ <complexContent>
106
+ <extension base="samlp:SubjectQueryAbstractType">
107
+ <sequence>
108
+ <element ref="samlp:RequestedAuthnContext" minOccurs="0"/>
109
+ </sequence>
110
+ <attribute name="SessionIndex" type="string" use="optional"/>
111
+ </extension>
112
+ </complexContent>
113
+ </complexType>
114
+ <element name="RequestedAuthnContext" type="samlp:RequestedAuthnContextType"/>
115
+ <complexType name="RequestedAuthnContextType">
116
+ <choice>
117
+ <element ref="saml:AuthnContextClassRef" maxOccurs="unbounded"/>
118
+ <element ref="saml:AuthnContextDeclRef" maxOccurs="unbounded"/>
119
+ </choice>
120
+ <attribute name="Comparison" type="samlp:AuthnContextComparisonType" use="optional"/>
121
+ </complexType>
122
+ <simpleType name="AuthnContextComparisonType">
123
+ <restriction base="string">
124
+ <enumeration value="exact"/>
125
+ <enumeration value="minimum"/>
126
+ <enumeration value="maximum"/>
127
+ <enumeration value="better"/>
128
+ </restriction>
129
+ </simpleType>
130
+ <element name="AttributeQuery" type="samlp:AttributeQueryType"/>
131
+ <complexType name="AttributeQueryType">
132
+ <complexContent>
133
+ <extension base="samlp:SubjectQueryAbstractType">
134
+ <sequence>
135
+ <element ref="saml:Attribute" minOccurs="0" maxOccurs="unbounded"/>
136
+ </sequence>
137
+ </extension>
138
+ </complexContent>
139
+ </complexType>
140
+ <element name="AuthzDecisionQuery" type="samlp:AuthzDecisionQueryType"/>
141
+ <complexType name="AuthzDecisionQueryType">
142
+ <complexContent>
143
+ <extension base="samlp:SubjectQueryAbstractType">
144
+ <sequence>
145
+ <element ref="saml:Action" maxOccurs="unbounded"/>
146
+ <element ref="saml:Evidence" minOccurs="0"/>
147
+ </sequence>
148
+ <attribute name="Resource" type="anyURI" use="required"/>
149
+ </extension>
150
+ </complexContent>
151
+ </complexType>
152
+ <element name="AuthnRequest" type="samlp:AuthnRequestType"/>
153
+ <complexType name="AuthnRequestType">
154
+ <complexContent>
155
+ <extension base="samlp:RequestAbstractType">
156
+ <sequence>
157
+ <element ref="saml:Subject" minOccurs="0"/>
158
+ <element ref="samlp:NameIDPolicy" minOccurs="0"/>
159
+ <element ref="saml:Conditions" minOccurs="0"/>
160
+ <element ref="samlp:RequestedAuthnContext" minOccurs="0"/>
161
+ <element ref="samlp:Scoping" minOccurs="0"/>
162
+ </sequence>
163
+ <attribute name="ForceAuthn" type="boolean" use="optional"/>
164
+ <attribute name="IsPassive" type="boolean" use="optional"/>
165
+ <attribute name="ProtocolBinding" type="anyURI" use="optional"/>
166
+ <attribute name="AssertionConsumerServiceIndex" type="unsignedShort" use="optional"/>
167
+ <attribute name="AssertionConsumerServiceURL" type="anyURI" use="optional"/>
168
+ <attribute name="AttributeConsumingServiceIndex" type="unsignedShort" use="optional"/>
169
+ <attribute name="ProviderName" type="string" use="optional"/>
170
+ </extension>
171
+ </complexContent>
172
+ </complexType>
173
+ <element name="NameIDPolicy" type="samlp:NameIDPolicyType"/>
174
+ <complexType name="NameIDPolicyType">
175
+ <attribute name="Format" type="anyURI" use="optional"/>
176
+ <attribute name="SPNameQualifier" type="string" use="optional"/>
177
+ <attribute name="AllowCreate" type="boolean" use="optional"/>
178
+ </complexType>
179
+ <element name="Scoping" type="samlp:ScopingType"/>
180
+ <complexType name="ScopingType">
181
+ <sequence>
182
+ <element ref="samlp:IDPList" minOccurs="0"/>
183
+ <element ref="samlp:RequesterID" minOccurs="0" maxOccurs="unbounded"/>
184
+ </sequence>
185
+ <attribute name="ProxyCount" type="nonNegativeInteger" use="optional"/>
186
+ </complexType>
187
+ <element name="RequesterID" type="anyURI"/>
188
+ <element name="IDPList" type="samlp:IDPListType"/>
189
+ <complexType name="IDPListType">
190
+ <sequence>
191
+ <element ref="samlp:IDPEntry" maxOccurs="unbounded"/>
192
+ <element ref="samlp:GetComplete" minOccurs="0"/>
193
+ </sequence>
194
+ </complexType>
195
+ <element name="IDPEntry" type="samlp:IDPEntryType"/>
196
+ <complexType name="IDPEntryType">
197
+ <attribute name="ProviderID" type="anyURI" use="required"/>
198
+ <attribute name="Name" type="string" use="optional"/>
199
+ <attribute name="Loc" type="anyURI" use="optional"/>
200
+ </complexType>
201
+ <element name="GetComplete" type="anyURI"/>
202
+ <element name="Response" type="samlp:ResponseType"/>
203
+ <complexType name="ResponseType">
204
+ <complexContent>
205
+ <extension base="samlp:StatusResponseType">
206
+ <choice minOccurs="0" maxOccurs="unbounded">
207
+ <element ref="saml:Assertion"/>
208
+ <element ref="saml:EncryptedAssertion"/>
209
+ </choice>
210
+ </extension>
211
+ </complexContent>
212
+ </complexType>
213
+ <element name="ArtifactResolve" type="samlp:ArtifactResolveType"/>
214
+ <complexType name="ArtifactResolveType">
215
+ <complexContent>
216
+ <extension base="samlp:RequestAbstractType">
217
+ <sequence>
218
+ <element ref="samlp:Artifact"/>
219
+ </sequence>
220
+ </extension>
221
+ </complexContent>
222
+ </complexType>
223
+ <element name="Artifact" type="string"/>
224
+ <element name="ArtifactResponse" type="samlp:ArtifactResponseType"/>
225
+ <complexType name="ArtifactResponseType">
226
+ <complexContent>
227
+ <extension base="samlp:StatusResponseType">
228
+ <sequence>
229
+ <any namespace="##any" processContents="lax" minOccurs="0"/>
230
+ </sequence>
231
+ </extension>
232
+ </complexContent>
233
+ </complexType>
234
+ <element name="ManageNameIDRequest" type="samlp:ManageNameIDRequestType"/>
235
+ <complexType name="ManageNameIDRequestType">
236
+ <complexContent>
237
+ <extension base="samlp:RequestAbstractType">
238
+ <sequence>
239
+ <choice>
240
+ <element ref="saml:NameID"/>
241
+ <element ref="saml:EncryptedID"/>
242
+ </choice>
243
+ <choice>
244
+ <element ref="samlp:NewID"/>
245
+ <element ref="samlp:NewEncryptedID"/>
246
+ <element ref="samlp:Terminate"/>
247
+ </choice>
248
+ </sequence>
249
+ </extension>
250
+ </complexContent>
251
+ </complexType>
252
+ <element name="NewID" type="string"/>
253
+ <element name="NewEncryptedID" type="saml:EncryptedElementType"/>
254
+ <element name="Terminate" type="samlp:TerminateType"/>
255
+ <complexType name="TerminateType"/>
256
+ <element name="ManageNameIDResponse" type="samlp:StatusResponseType"/>
257
+ <element name="LogoutRequest" type="samlp:LogoutRequestType"/>
258
+ <complexType name="LogoutRequestType">
259
+ <complexContent>
260
+ <extension base="samlp:RequestAbstractType">
261
+ <sequence>
262
+ <choice>
263
+ <element ref="saml:BaseID"/>
264
+ <element ref="saml:NameID"/>
265
+ <element ref="saml:EncryptedID"/>
266
+ </choice>
267
+ <element ref="samlp:SessionIndex" minOccurs="0" maxOccurs="unbounded"/>
268
+ </sequence>
269
+ <attribute name="Reason" type="string" use="optional"/>
270
+ <attribute name="NotOnOrAfter" type="dateTime" use="optional"/>
271
+ </extension>
272
+ </complexContent>
273
+ </complexType>
274
+ <element name="SessionIndex" type="string"/>
275
+ <element name="LogoutResponse" type="samlp:StatusResponseType"/>
276
+ <element name="NameIDMappingRequest" type="samlp:NameIDMappingRequestType"/>
277
+ <complexType name="NameIDMappingRequestType">
278
+ <complexContent>
279
+ <extension base="samlp:RequestAbstractType">
280
+ <sequence>
281
+ <choice>
282
+ <element ref="saml:BaseID"/>
283
+ <element ref="saml:NameID"/>
284
+ <element ref="saml:EncryptedID"/>
285
+ </choice>
286
+ <element ref="samlp:NameIDPolicy"/>
287
+ </sequence>
288
+ </extension>
289
+ </complexContent>
290
+ </complexType>
291
+ <element name="NameIDMappingResponse" type="samlp:NameIDMappingResponseType"/>
292
+ <complexType name="NameIDMappingResponseType">
293
+ <complexContent>
294
+ <extension base="samlp:StatusResponseType">
295
+ <choice>
296
+ <element ref="saml:NameID"/>
297
+ <element ref="saml:EncryptedID"/>
298
+ </choice>
299
+ </extension>
300
+ </complexContent>
301
+ </complexType>
302
+ </schema>
@@ -0,0 +1,146 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE schema PUBLIC "-//W3C//DTD XMLSchema 200102//EN"
3
+ "http://www.w3.org/2001/XMLSchema.dtd"
4
+ [
5
+ <!ATTLIST schema
6
+ xmlns:xenc CDATA #FIXED 'http://www.w3.org/2001/04/xmlenc#'
7
+ xmlns:ds CDATA #FIXED 'http://www.w3.org/2000/09/xmldsig#'>
8
+ <!ENTITY xenc 'http://www.w3.org/2001/04/xmlenc#'>
9
+ <!ENTITY % p ''>
10
+ <!ENTITY % s ''>
11
+ ]>
12
+
13
+ <schema xmlns='http://www.w3.org/2001/XMLSchema' version='1.0'
14
+ xmlns:xenc='http://www.w3.org/2001/04/xmlenc#'
15
+ xmlns:ds='http://www.w3.org/2000/09/xmldsig#'
16
+ targetNamespace='http://www.w3.org/2001/04/xmlenc#'
17
+ elementFormDefault='qualified'>
18
+
19
+ <import namespace='http://www.w3.org/2000/09/xmldsig#'
20
+ schemaLocation='xmldsig_schema.xsd'/>
21
+
22
+ <complexType name='EncryptedType' abstract='true'>
23
+ <sequence>
24
+ <element name='EncryptionMethod' type='xenc:EncryptionMethodType'
25
+ minOccurs='0'/>
26
+ <element ref='ds:KeyInfo' minOccurs='0'/>
27
+ <element ref='xenc:CipherData'/>
28
+ <element ref='xenc:EncryptionProperties' minOccurs='0'/>
29
+ </sequence>
30
+ <attribute name='Id' type='ID' use='optional'/>
31
+ <attribute name='Type' type='anyURI' use='optional'/>
32
+ <attribute name='MimeType' type='string' use='optional'/>
33
+ <attribute name='Encoding' type='anyURI' use='optional'/>
34
+ </complexType>
35
+
36
+ <complexType name='EncryptionMethodType' mixed='true'>
37
+ <sequence>
38
+ <element name='KeySize' minOccurs='0' type='xenc:KeySizeType'/>
39
+ <element name='OAEPparams' minOccurs='0' type='base64Binary'/>
40
+ <any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
41
+ </sequence>
42
+ <attribute name='Algorithm' type='anyURI' use='required'/>
43
+ </complexType>
44
+
45
+ <simpleType name='KeySizeType'>
46
+ <restriction base="integer"/>
47
+ </simpleType>
48
+
49
+ <element name='CipherData' type='xenc:CipherDataType'/>
50
+ <complexType name='CipherDataType'>
51
+ <choice>
52
+ <element name='CipherValue' type='base64Binary'/>
53
+ <element ref='xenc:CipherReference'/>
54
+ </choice>
55
+ </complexType>
56
+
57
+ <element name='CipherReference' type='xenc:CipherReferenceType'/>
58
+ <complexType name='CipherReferenceType'>
59
+ <choice>
60
+ <element name='Transforms' type='xenc:TransformsType' minOccurs='0'/>
61
+ </choice>
62
+ <attribute name='URI' type='anyURI' use='required'/>
63
+ </complexType>
64
+
65
+ <complexType name='TransformsType'>
66
+ <sequence>
67
+ <element ref='ds:Transform' maxOccurs='unbounded'/>
68
+ </sequence>
69
+ </complexType>
70
+
71
+
72
+ <element name='EncryptedData' type='xenc:EncryptedDataType'/>
73
+ <complexType name='EncryptedDataType'>
74
+ <complexContent>
75
+ <extension base='xenc:EncryptedType'>
76
+ </extension>
77
+ </complexContent>
78
+ </complexType>
79
+
80
+ <!-- Children of ds:KeyInfo -->
81
+
82
+ <element name='EncryptedKey' type='xenc:EncryptedKeyType'/>
83
+ <complexType name='EncryptedKeyType'>
84
+ <complexContent>
85
+ <extension base='xenc:EncryptedType'>
86
+ <sequence>
87
+ <element ref='xenc:ReferenceList' minOccurs='0'/>
88
+ <element name='CarriedKeyName' type='string' minOccurs='0'/>
89
+ </sequence>
90
+ <attribute name='Recipient' type='string'
91
+ use='optional'/>
92
+ </extension>
93
+ </complexContent>
94
+ </complexType>
95
+
96
+ <element name="AgreementMethod" type="xenc:AgreementMethodType"/>
97
+ <complexType name="AgreementMethodType" mixed="true">
98
+ <sequence>
99
+ <element name="KA-Nonce" minOccurs="0" type="base64Binary"/>
100
+ <!-- <element ref="ds:DigestMethod" minOccurs="0"/> -->
101
+ <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
102
+ <element name="OriginatorKeyInfo" minOccurs="0" type="ds:KeyInfoType"/>
103
+ <element name="RecipientKeyInfo" minOccurs="0" type="ds:KeyInfoType"/>
104
+ </sequence>
105
+ <attribute name="Algorithm" type="anyURI" use="required"/>
106
+ </complexType>
107
+
108
+ <!-- End Children of ds:KeyInfo -->
109
+
110
+ <element name='ReferenceList'>
111
+ <complexType>
112
+ <choice minOccurs='1' maxOccurs='unbounded'>
113
+ <element name='DataReference' type='xenc:ReferenceType'/>
114
+ <element name='KeyReference' type='xenc:ReferenceType'/>
115
+ </choice>
116
+ </complexType>
117
+ </element>
118
+
119
+ <complexType name='ReferenceType'>
120
+ <sequence>
121
+ <any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
122
+ </sequence>
123
+ <attribute name='URI' type='anyURI' use='required'/>
124
+ </complexType>
125
+
126
+
127
+ <element name='EncryptionProperties' type='xenc:EncryptionPropertiesType'/>
128
+ <complexType name='EncryptionPropertiesType'>
129
+ <sequence>
130
+ <element ref='xenc:EncryptionProperty' maxOccurs='unbounded'/>
131
+ </sequence>
132
+ <attribute name='Id' type='ID' use='optional'/>
133
+ </complexType>
134
+
135
+ <element name='EncryptionProperty' type='xenc:EncryptionPropertyType'/>
136
+ <complexType name='EncryptionPropertyType' mixed='true'>
137
+ <choice maxOccurs='unbounded'>
138
+ <any namespace='##other' processContents='lax'/>
139
+ </choice>
140
+ <attribute name='Target' type='anyURI' use='optional'/>
141
+ <attribute name='Id' type='ID' use='optional'/>
142
+ <anyAttribute namespace="http://www.w3.org/XML/1998/namespace"/>
143
+ </complexType>
144
+
145
+ </schema>
146
+