+
    xȇi                       ^ RI Ht ^ RIHtHt ^ RIHt ^ RIt^ RIH	t	 ^ RI
Ht ^ RIHt ^ RIHt ^ RIt^ RIt^ R	IHt ^ R
IHt ^ RIHtHt ^ RIHu Ht ^ RIt^ RIH t H!t!H"t" ^ RI#H$t% ^ RI&H't' ^ RI(H)t) ]!! R. ROR. ROR^]PT                  ^./4      t+Rt,Rt-]!! R^ R^R^R^R^R/R^ R^R^R^R^R/R^ R^R^R^R^R/R^ ^ ^^ ^^ ^^ ^^ /R ^ R!^R!^R!^R!^R!/R"^ R#^R$^R%^R&^R'//].! ^4      R(7      t/R) t0]Pb                  ! R*R+.R,7      R- 4       t2]Pb                  ! ]Pf                  ! R.]Ph                  ! R.4      R/7      R0.R,7      R1 4       t5R2 t6R3 t7R4 t8]Pr                  Pt                  ]Pr                  Pv                  R5 4       4       t<R6 t=R7 t>R8 t?R9 t@R: tAR; tBR< tC]Pr                  P                  R=R>R?.4      R@ 4       tE]Pr                  P                  R=R>R?.4      RA 4       tF]Pr                  P                  ]RBRC7      RD 4       tH]Pr                  Pt                  ]Pr                  Pv                  RE 4       4       tI]Pr                  Pt                  ]Pr                  Pv                  RF 4       4       tJRG tKRH tLRI tMRJ tNRK tORL tPRM tQRN tRRO tSRP tTRQ tU]Pr                  P                  RRR>R.4      RS 4       tVRT tWRU tXRV tYRW tZRX t[RY t\RZ t]R[ t^R\ t_R] t`R^ taR_ tbR` tcRa tdRb teRc tfRd tgRe thRf tiRg tj]P                  ! R.4      Rh 4       tlRi tmRj tnRk toRl tpRm tqRn trRo tsRp ttRq tuRr tvRs twRt txRu ty]Pr                  P                  R=]! R>4      ]! R?4      .4      Rv 4       tzRw t{Rx t|]Pr                  Pt                  ]Pr                  Pv                  Ry 4       4       t}Rz t~R{ tR| tR} tR~ tR tR tR tR tR tR tR tR t]Pr                  Pt                  ]Pr                  Pv                  R 4       4       tR tR tR# )    )annotations)BytesIOStringIO)	LZMAErrorN)	ReadError)	HTTPError)
ParseError)
BadZipFile)WASM)import_optional_dependency)EmptyDataErrorParserError)NA	DataFrameSeries)
get_handle)read_xmlshapedegreessidesa[  <?xml version='1.0' encoding='utf-8'?>
<data xmlns="http://example.com">
  <row>
    <shape>square</shape>
    <degrees>360</degrees>
    <sides>4</sides>
  </row>
  <row>
    <shape>circle</shape>
    <degrees>360</degrees>
    <sides/>
  </row>
  <row>
    <shape>triangle</shape>
    <degrees>180</degrees>
    <sides>3</sides>
  </row>
</data>a  <?xml version='1.0' encoding='utf-8'?>
<doc:data xmlns:doc="http://example.com">
  <doc:row>
    <doc:shape>square</doc:shape>
    <doc:degrees>360</doc:degrees>
    <doc:sides>4.0</doc:sides>
  </doc:row>
  <doc:row>
    <doc:shape>circle</doc:shape>
    <doc:degrees>360</doc:degrees>
    <doc:sides/>
  </doc:row>
  <doc:row>
    <doc:shape>triangle</doc:shape>
    <doc:degrees>180</doc:degrees>
    <doc:sides>3.0</doc:sides>
  </doc:row>
</doc:data>idID_00001ID_00002ID_00003ID_00004ID_00005namezBlue Line (Forest Park)zRed, Purple LinestyleUrlz#LineStyle01extrudealtitudeModeclampedToGroundcoordinatesz-87.77678526964958,41.8708863930319,0 -87.77826234150609,41.87097820122218,0 -87.78251583439344,41.87130129991005,0 -87.78418294588424,41.87145055520308,0 -87.7872369165933,41.8717239119163,0 -87.79160214925886,41.87210797280065,0a\  -87.65758750947528,41.96427269188822,0 -87.65802133507393,41.96581929055245,0 -87.65819033925305,41.96621846093642,0 -87.6583189819129,41.96650362897086,0 -87.65835858701473,41.96669002089185,0 -87.65838428411853,41.96688150295095,0 -87.65842208882658,41.96745896091846,0 -87.65846556843937,41.9683761425439,0 -87.65849296214573,41.96913893870342,0a  -87.65492939166126,41.95377494531437,0 -87.65557043199591,41.95376544118533,0 -87.65606302030132,41.95376391658746,0 -87.65623502146268,41.95377379126367,0 -87.65634748981634,41.95380103566435,0 -87.65646537904269,41.95387703994676,0 -87.65656532461145,41.95396622645799,0 -87.65664760856414,41.95404201996044,0 -87.65671750555913,41.95416647054043,0 -87.65673983607117,41.95429949810849,0 -87.65673866475777,41.95441024240925,0 -87.6567690255541,41.95490657227902,0 -87.65683672482363,41.95692259283837,0 -87.6568900886376,41.95861070983142,0 -87.65699865558875,41.96181418669004,0 -87.65756347177603,41.96397045777844,0 -87.65758750947528,41.96427269188822,0ah  -87.65362593118043,41.94742799535678,0 -87.65363554415794,41.94819886386848,0 -87.6536456393239,41.95059994675451,0 -87.65365831235026,41.95108288489359,0 -87.6536604873874,41.9519954657554,0 -87.65362592053201,41.95245597302328,0 -87.65367158496069,41.95311153649393,0 -87.65368468595476,41.9533202828916,0 -87.65369271253692,41.95343095587119,0 -87.65373335834569,41.95351536301472,0 -87.65378605844126,41.95358212680591,0 -87.65385067928185,41.95364452823767,0 -87.6539390793817,41.95370263886964,0 -87.6540786298351,41.95373403675265,0 -87.65430648647626,41.9537535411832,0 -87.65492939166126,41.95377494531437,0a   -87.65345391792157,41.94217681262115,0 -87.65342448305786,41.94237224420864,0 -87.65339745703922,41.94268217746244,0 -87.65337753982941,41.94288140770284,0 -87.65336256753105,41.94317369618263,0 -87.65338799707138,41.94357253961736,0 -87.65340240886648,41.94389158188269,0 -87.65341837392448,41.94406444407721,0 -87.65342275247338,41.94421065714904,0 -87.65347469646018,41.94434829382345,0 -87.65351486483024,41.94447699917548,0 -87.65353483605053,41.9453896864472,0 -87.65361975532807,41.94689193720703,0 -87.65362593118043,41.94742799535678,0indexc                    \         P                  ! R 4       RP                  RR.4      p \         P                  ! \        \
        3V R7      ;_uu_ 4        \        \        4       RRR4       R#   + '       g   i     R# ; i)lxml|z.*No such file or directoryz.*Invalid argumentmatchN)pytestimportorskipjoinraisesFileNotFoundErrorOSErrorr   xml_default_nmspmsgs    l/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/io/xml/test_xml.pytest_literal_xml_raisesr4      sU    

((24IJ
KC	)733	?	?!" 
@	?	?	?s   A..A?	rbr)paramsc                    V P                   # Nparamrequests   &r3   moder>          ==    r&   )marksetreec                    V P                   # r9   r:   r<   s   &r3   parserrD     r?   r@   c                @    VP                  V R R7       \        V3/ VB # )utf-8encoding)
write_textr   )data	temp_pathkwargss   &&,r3   read_xml_iterparserM   
  s%    0I(((r@   c                    \        V R VR7      ;_uu_ 4       pVP                  VP                  P                  4       RR7       \	        V3/ VB uuRRR4       #   + '       g   i     R# ; i)r6   )compressionrF   rG   N)r   rI   handlereadr   )	comp_pathcompression_onlyrK   rL   handless   &&&, r3   read_xml_iterparse_comprU     sQ    	Is0@	A	AWW^^002WE	,V, 
B	A	A	As   7AA*	c                2   \         P                  ! R 4       \        V R R7      p\        V RR7      p\        V R R. RO/R7      p\        V RR. RO/R7      p\        P                  ! W4       \        P                  ! W4       \        P                  ! W44       R# )r&   rD   rB   bookrD   	iterparseNcategorytitleyearauthorpricer*   r+   r   tmassert_frame_equal)	xml_booksdf_file_lxmldf_file_etreedf_iter_lxmldf_iter_etrees   &    r3   test_parser_consistency_fileri     s    
If5LYw7MKLL
 KLM ,6,5,6r@   c                    VP                  \        R 7       \        \        \        4      V R7      p\        \	        \        P                  4       4      V R. RO/R7      p\        P                  ! W#4       R# )contentrW   rowrY   Nr   r   r   )serve_contentr0   r   r   r   encoderb   rc   )rD   
httpserverdf_xpathdf_iters   &&  r3   test_parser_consistency_urlrt   -  s`     %56!126BH '')*78G (,r@   c                    \        YVR 8X  d   RMRR7      ;_uu_ 4       p\        W1R7      pRRR4       \        R. R
OR. ROR. ROR. ROR	. RO/4      p\        P                  ! XV4       R#   + '       g   i     LH; ir6   rF   NrG   rW   r\   r]   r_   r^   r`   cookingchildrenwebzEveryday ItalianzHarry PotterzLearning XMLzGiada De LaurentiiszJ K. RowlingzErik T. Ray  r~   i  g      >@g=
ףp=@gC@)openr   r   rb   rc   )rd   rD   r>   fdf_filedf_expecteds   &&&   r3   test_file_liker   <  st    	i43;D	I	IQ1, 
J 6IL&*	
K ';/ 
J	Is   A,,A<	c                r   \        YVR 8X  d   RMRR7      ;_uu_ 4       pVP                  4       pRRR4       \        \        X\        4      '       d   \        V4      M
\        V4      VR7      p\        R. R
OR. ROR. ROR. ROR	. RO/4      p\        P                  ! WV4       R#   + '       g   i     L~; irv   )
r   rQ   r   
isinstancebytesr   r   r   rb   rc   )rd   rD   r>   r   xml_objdf_ior   s   &&&    r3   test_file_ior   M  s    	i43;D	I	IQ&&( 
J '77	Xg=NE
 6IL&*	
K %-% 
J	Is   B&&B6	c                   \        YVR 8X  d   RMRR7      ;_uu_ 4       pVP                  4       pRRR4       VR8X  d   \        XP                  4       4      pMVR 8X  d   \        X4      p\	        XVR7      p\        R. ROR. ROR. ROR	. ROR
. RO/4      p\        P                  ! WV4       R#   + '       g   i     L; ir6   rF   NrG   r5   rW   r\   r]   r_   r^   r`   rw   r{   r|   r}   r   )r   rQ   r   decoder   r   rb   rc   rd   rD   r>   r   r   df_strr   s   &&&    r3    test_file_buffered_reader_stringr   c  s    	i43;D	I	IQ&&( 
J t|7>>+,	7#gf-F6IL&*	
K &.) 
J	Is   B//B?	c                   \        YVR 8X  d   RMRR7      ;_uu_ 4       p\        V4       VP                  4       pRRR4       VR8X  d   \        XP	                  4       4      pMVR 8X  d   \        X4      p\        XVR7      p\        R. ROR. ROR. ROR	. ROR
. RO/4      p\        P                  ! WV4       R#   + '       g   i     L; ir   )	r   nextrQ   r   r   r   r   rb   rc   r   s   &&&    r3   ,test_file_buffered_reader_no_xml_declarationr   {  s    	i43;D	I	IQQ&&( 
J t|7>>+,	7#gf-F6IL&*	
K &.+ 
J	Is   B::C
	c                    R p\        \        V4      V R7      p\        R^R^/\        ^4      R7      p\        P
                  ! W#4       R# )<   <中文標籤><row><c1>1</c1><c2>2</c2></row></中文標籤>rW   c1c2r#   N)r   r   r   rangerb   rc   )rD   txtr   r   s   &   r3   test_string_charsetr     s>    
HChsmF3FT1dA.eAh?K&.r@   c           	         \        WR 7      p\        R. R	ORRP                  RR.4      RR.R. R
O/4      p\        P                  ! W#4       R# )rW   u   問u   答 u<   答  邪既無量 正亦多途  大略為言不出二種 謂u;   有得與無得 有得是邪須破 無得是正須申
		故NuL   答  不例  有無皆是性 所以須雙破 既分性假異 故有破不破a)uP   問  若箇是邪而言破邪 何者是正而道(Sorry, this is Big5 only)申正u;   問 既破有得申無得 亦應但破性執申假名以不uO   問 既破性申假 亦應但破有申無 若有無兩洗 亦應性假雙破耶)NuV   答 性執是有得 假名是無得  今破有得申無得 即是破性執申假名也N)r   r   r,   rb   rc   )xml_doc_ch_utfrD   r   r   s   &&  r3   test_file_charsetr     sf    ~5G 
 VX ^	  !	
K2 '/r@   c                    \        V R 4      ;_uu_ 4       p\        \        VP                  4       4      VR7       VP                  '       d   Q h RRR4       R#   + '       g   i     R# ; i)r5   rW   N)r   r   r   rQ   closed)rd   rD   r   s   && r3   test_file_handle_closer     sE    	i		!"62888|8 
			s   9AA*	valr   r@   c                Z   \         P                  ! R 4      pRP                  RR.4      p\        V \        4      '       d   \        V 4      pM\        V 4      p\         P                  ! VP                  VR7      ;_uu_ 4        \        VRR7       RRR4       R#   + '       g   i     R# ; i)
lxml.etreer'   zDocument is emptyzNone \(line 0\)r(   r&   rW   N)
r*   r+   r,   r   strr   r   r-   XMLSyntaxErrorr   )r   
lxml_etreer2   rJ   s   &   r3   test_empty_string_lxmlr     s|    $$\2J
((	
C #s}s|	z00	<	<f% 
=	<	<	<s   BB*	c                    \        V \        4      '       d   \        V 4      pM\        V 4      p\        P
                  ! \        R R7      ;_uu_ 4        \        VRR7       RRR4       R#   + '       g   i     R# ; i)zno element foundr(   rB   rW   N)r   r   r   r   r*   r-   r	   r   )r   rJ   s   & r3   test_empty_string_etreer     sL    #s}s|	z);	<	<g& 
=	<	<	<s   A**A;	z"limited file system access on WASM)reasonc                    \         P                  P                  R RRR4      p\        P                  ! \
        RR7      ;_uu_ 4        \        WR7       RRR4       R#   + '       g   i     R# ; i)doesnotexistz	books.xml%\[Errno 2\] No such file or directoryr(   rW   N)ospathr,   r*   r-   r.   r   )rD   filenames   & r3   test_wrong_file_pathr     sP    ww||FE7K@H	!I
 
 	)
 
 
 
s   AA/	c                n   \         P                  ! R 4       \        VRR7      ;_uu_ 4       pV P                  VP	                  4       R7       \        V P                  RR7      pRRR4       \        R. ROR. ROR	. ROR
. ROR. RO/4      p\        P                  ! XV4       R#   + '       g   i     LH; i)r&   rF   rG   rk   .//book[count(*)=4]xpathNr\   r]   r_   r^   r`   rw   r{   r|   r}   r   )
r*   r+   r   ro   rQ   r   urlr   rb   rc   )rq   xml_filer   df_urlr   s   &&   r3   test_urlr     s     	h	)	)Q   2*..0EF 
* 6IL&*	
K &+. 
*	)s   8B$$B4	c                    VP                  R RR7       \        P                  ! \        RR7      ;_uu_ 4        \	        VP
                  RV R7       RRR4       R#   + '       g   i     R# ; i)z	NOT FOUNDi  )codezHTTP Error 404: NOT FOUNDr(   r   r   rD   N)ro   r*   r-   r   r   r   )rD   rq   s   &&r3   test_wrong_urlr      sJ     [s3	y)D	F	F'<VL 
G	F	F	Fs   AA,	c           	         R p\        \        V4      V RR7      p\        VVV R. R
O/RR7      p\        R. ROR. ROR. RO/RR7      p\        P
                  ! W54       \        P
                  ! WE4       R	# )a  
      <data>
        <row sides=" 4 ">
          <shape>
              square
          </shape>
          <degrees>&#009;360&#009;</degrees>
        </row>
        <row sides=" 0 ">
          <shape>
              circle
          </shape>
          <degrees>&#009;360&#009;</degrees>
        </row>
        <row sides=" 3 ">
          <shape>
              triangle
          </shape>
          <degrees>&#009;180&#009;</degrees>
        </row>
      </data>string)rD   dtyperm   r   r   r   )rD   rZ   r   r   N)r   r   r   )z 4 z 0 z 3 )z 
              square
          z 
              circle
          z"
              triangle
          )	360	r   z	180	r   r   rM   r   rb   rc   rD   	temp_filexmlrr   rs   r   s   &&    r3   test_whitespacer     s    C, fHEH 78G * 
 8	
 K (0'/r@   c                    \         P                  ! R 4       \         P                  ! \        RR7      ;_uu_ 4        \	        V RR R7       RRR4       R#   + '       g   i     R# ; i)r&   xpath does not return any nodesr(   z	.//pythonr   Nr*   r+   r-   
ValueErrorr   rd   s   &r3   test_empty_xpath_lxmlr   @  s>    
	z*K	M	M+f= 
N	M	M	M   AA%	c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RRR7       RRR4       R#   + '       g   i     R# ; i)z/You have used an incorrect or unsupported XPathr(   	.//[book]rB   r   Nr*   r-   SyntaxErrorr   r   s   &r3   test_bad_xpath_etreer   F  s<    	M
 
 	+g>
 
 
 
	   >A	c                    \         P                  ! R 4      p\         P                  ! VP                  RR7      ;_uu_ 4        \	        V RRR7       RRR4       R#   + '       g   i     R# ; i)r   zInvalid expressionr(   r   r&   r   Nr*   r+   r-   XPathEvalErrorr   )rd   r   s   & r3   test_bad_xpath_lxmlr   M  sF    $$\2J	z009M	O	O+f= 
P	O	O	O   AA+	c                
   \        \        \        4      R RR/V R7      p\        \        VV R. RO/R7      p\	        R. ROR. RORR	\        R
4      R./4      p\        P                  ! W$4       \        P                  ! W44       R# )	.//ns:rownshttp://example.comr   
namespacesrD   rm   r   r   r   rY         @nan      @Nrn   squarecircletriangleh  r      )r   r   r0   rM   r   floatrb   rc   rD   r   df_nmsprs   r   s   &&   r3   test_default_namespacer   W  s    !"./	G !78	G 5c5<-	
K '/'/r@   c                
   \        \        \        4      R RR/V R7      p\        \        VV R. RO/R7      p\	        R. ROR. RORR	\        R
4      R./4      p\        P                  ! W$4       \        P                  ! W44       R# )
.//doc:rowdocr   r   rm   r   r   r   rY   r   r   r   Nrn   r   r   )r   r   xml_prefix_nmsprM   r   r   rb   rc   r   s   &&   r3   test_prefix_namespacer   r  s    !/0	G !78	G 5c5<-	
K '/'/r@   c                     \         P                  ! R 4       \        \        \        4      RRR/R R7      p \        \        \        4      RRR/RR7      p\
        P                  ! W4       R# )	r&   r   r   r   r   r   r   rB   N)r*   r+   r   r   r0   rb   rc   df_lxmldf_etrees     r3   "test_consistency_default_namespacer     sf    
!"./	G !"/0	H ',r@   c                     \         P                  ! R 4       \        \        \        4      RRR/R R7      p \        \        \        4      RRR/RR7      p\
        P                  ! W4       R# )r&   r   r   r   r   rB   N)r*   r+   r   r   r   rb   rc   r   s     r3   !test_consistency_prefix_namespacer     sd    
!/0	G !/0	H ',r@   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RVR7       RRR4       R#   + '       g   i     R# ; i)r   r(   z.//Placemarkr   Nr*   r-   r   r   rd   rD   s   &&r3   *test_missing_prefix_with_default_namespacer    s0    	z*K	M	M.@ 
N	M	M	Mr   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RRR7       RRR4       R#   + '       g   i     R# ; i)z'you used an undeclared namespace prefixr(   .//kml:PlacemarkrB   r   Nr   )kml_cta_rail_liness   &r3   $test_missing_prefix_definition_etreer    s2    	{+T	V	V#+=gN 
W	V	V	Vr   c                    \         P                  ! R 4      p\         P                  ! VP                  RR7      ;_uu_ 4        \	        V RRR7       RRR4       R#   + '       g   i     R# ; i)r   zUndefined namespace prefixr(   r  r&   r   Nr   )r  r   s   & r3   #test_missing_prefix_definition_lxmlr    sH    $$\2J	z009U	W	W#+=fM 
X	W	W	Wr   keyc           	         \         P                  ! R 4       \         P                  ! \        RR7      ;_uu_ 4        \	        \        \        4      RV R/R R7       RRR4       R#   + '       g   i     R# ; i)r&   z0empty namespace prefix is not supported in XPathr(   r  http://www.opengis.net/kml/2.2r   N)r*   r+   r-   	TypeErrorr   r   r0   )r  s   &r3   test_none_namespace_prefixr    s^    
	L
 
 	%&$=>		

 
 
 
s   A$$A5	c                    \        WR 7      p\        V VR. R	O/R7      p\        R. R
OR. ROR. ROR. ROR. RO/4      p\        P                  ! W$4       \        P                  ! W44       R# )rW   rX   r\   r]   r_   r^   r`   rY   Nr\   r]   r_   r^   r`   rw   r{   r|   r}   r   r   r   rb   rc   rd   rD   r   rs   r   s   &&   r3   test_file_elems_and_attrsr    sr    y0GKLG
 6IL&*	
K '/'/r@   c                    \        V R VR7      p\        WRR./R7      p\        R. RO/4      p\        P                  ! W$4       \        P                  ! W44       R# )T)
attrs_onlyrD   rX   r\   rY   Nrw   r  r  s   &&   r3   test_file_only_attrsr    sO    yT&AGyFZL;QRGZ)GHIK'/'/r@   c                    \        V R VR7      p\        V VR. R	O/R7      p\        R. R
OR. ROR. ROR. RO/4      p\        P                  ! W$4       \        P                  ! W44       R# )T)
elems_onlyrD   rX   r]   r_   r^   r`   rY   N)r]   r_   r^   r`   r{   r|   r}   r   r  r  s   &&   r3   test_file_only_elemsr    sp    yT&AG?@G
 IL&*		
K '/'/r@   c           	         \         P                  ! \        R R7      ;_uu_ 4        \        V RRVR7       RRR4       R#   + '       g   i     R# ; i)z3Either element or attributes can be parsed not bothr(   T)r  r  rD   Nr   )r  rD   s   &&r3   test_elem_and_attrs_onlyr  	  s?    	D
 
 	#fU	
 
 
 
	   ?A	c           	         R p\         P                  ! \        RR7      ;_uu_ 4        \        \	        V4      RRV R7       RRR4       R#   + '       g   i     R# ; i)aU  
      <data>
        <row>
          <shape sides="4">square</shape>
          <degrees>360</degrees>
        </row>
        <row>
          <shape sides="0">circle</shape>
          <degrees>360</degrees>
        </row>
        <row>
          <shape sides="3">triangle</shape>
          <degrees>180</degrees>
        </row>
      </data>-xpath does not return any nodes or attributesr(   ./rowT)r   r  rD   Nr*   r-   r   r   r   rD   r   s   & r3   test_empty_attrs_onlyr     sK    C  
>
 
 	#g$vN	
 
 
 
   A

A	c           	         R p\         P                  ! \        RR7      ;_uu_ 4        \        \	        V4      RRV R7       RRR4       R#   + '       g   i     R# ; i)z
      <data>
        <row sides="4" shape="square" degrees="360"/>
        <row sides="0" shape="circle" degrees="360"/>
        <row sides="3" shape="triangle" degrees="180"/>
      </data>r  r(   r  T)r   r  rD   Nr  r  s   & r3   test_empty_elems_onlyr#  )  sK    C 
>
 
 	#g$vN	
 
 
 
r!  c                .   \         P                  ! R 4       Rp\        \        V4      RR7      p\        \        V4      RRR7      p\	        WRRR./R	7      p\	        WRRRR./R
7      p\
        P                  ! W#4       \
        P                  ! WE4       R# )r&   a  <?xml version="1.0" encoding="UTF-8"?>
<TrainSchedule>
      <Stations>
         <station Name="Manhattan" coords="31,460,195,498"/>
         <station Name="Laraway Road" coords="63,409,194,455"/>
         <station Name="179th St (Orland Park)" coords="0,364,110,395"/>
         <station Name="153rd St (Orland Park)" coords="7,333,113,362"/>
         <station Name="143rd St (Orland Park)" coords="17,297,115,330"/>
         <station Name="Palos Park" coords="128,281,239,303"/>
         <station Name="Palos Heights" coords="148,257,283,279"/>
         <station Name="Worth" coords="170,230,248,255"/>
         <station Name="Chicago Ridge" coords="70,187,208,214"/>
         <station Name="Oak Lawn" coords="166,159,266,185"/>
         <station Name="Ashburn" coords="197,133,336,157"/>
         <station Name="Wrightwood" coords="219,106,340,133"/>
         <station Name="Chicago Union Sta" coords="220,0,360,43"/>
      </Stations>
</TrainSchedule>z
.//stationr   rB   r   stationNamecoordsrZ   rY   N)r*   r+   r   r   rM   rb   rc   )r   r   r   r   
df_iter_lx
df_iter_ets   &     r3   test_attribute_centric_xmlr+  8  s    
C( x}L9G\'JH#9vx.@"AJ $w9vx>P2QJ ',*1r@   c                    \        V . R	OVR7      p\        V V. R	OR. R
O/R7      p\        R . ROR. ROR. ROR. ROR. RO/4      p\        P                  ! W$4       \        P                  ! W44       R# )Col1Col2Col3Col4Col5namesrD   rX   )rD   r3  rZ   N)r-  r.  r/  r0  r1  r  rw   r{   r|   r}   r   r  r  s   &&   r3   test_names_option_outputr4  _  s    A&G 6KL	G 2HJ&)	
K '/'/r@   c           	         R p\        \        V4      RV . ROR7      p\        VVV R. RO/. ROR7      p\        RRR.RR	R
.RRR./4      p\        P
                  ! W54       \        P
                  ! WE4       R# )z<shapes>
  <shape type="2D">
    <name>circle</name>
    <type>curved</type>
  </shape>
  <shape type="3D">
    <name>sphere</name>
    <type>curved</type>
  </shape>
</shapes>.//shapetype_dimr   	type_edger   rD   r3  rD   rZ   r3  2D3Dr   spherecurvedN)r7  r   r8  )typer   r?  r   r   s   &&    r3   test_repeat_namesr@  x  s    
C 0	H !450G th)(H-	
K (0'/r@   c                    R p\        \        V4      RV RR.R7      p\        VVV RRR./RR.R7      p\        R. R	OR. R
O/4      p\        P
                  ! W54       \        P
                  ! WE4       R# )aB  <shapes>
  <shape>
    <name>rectangle</name>
    <family>rectangle</family>
  </shape>
  <shape>
    <name>square</name>
    <family>rectangle</family>
  </shape>
  <shape>
    <name>ellipse</name>
    <family>ellipse</family>
  </shape>
  <shape>
    <name>circle</name>
    <family>ellipse</family>
  </shape>
</shapes>r6  r   groupr9  r   familyr:  N)	rectangler   ellipser   )rD  rD  rE  rE  r   r   s   &&    r3   test_repeat_values_new_namesrF    s    C& Zvw>OH !VX./wG @E	
K (0'/r@   c                    R p\        \        V4      RV . R
OR7      p\        VVV R. RO/. R
OR7      p\        R. ROR. ROR. ROR. RO/4      p\        P
                  ! W54       \        P
                  ! WE4       R	# )a  <shapes>
  <shape>
    <value item="name">circle</value>
    <value item="family">ellipse</value>
    <value item="degrees">360</value>
    <value item="sides">0</value>
  </shape>
  <shape>
    <value item="name">triangle</value>
    <value item="family">polygon</value>
    <value item="degrees">180</value>
    <value item="sides">3</value>
  </shape>
  <shape>
    <value item="name">square</value>
    <value item="family">polygon</value>
    <value item="degrees">360</value>
    <value item="sides">4</value>
  </shape>
</shapes>r6  r   rC  r   r   r9  r   r:  N)r   rC  r   r   )valuerH  rH  rH  )r   r   r   )rE  polygonrI  )r   r   r   )r         r   r   s   &&    r3   test_repeat_elementsrL    s    C* 4	H !@A4G 47Y		
K (0'/r@   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V . ROVR7       RRR4       R#   + '       g   i     R# ; i)znames does not match lengthr(   r2  N)r-  r.  r/  r   r   s   &&r3   test_names_option_wrong_lengthrN    s1    	z*G	I	I":6J 
J	I	I	I   A  A	c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RVR7       RRR4       R#   + '       g   i     R# ; i)zis not a valid type for namesr(   zCol1, Col2, Col3r2  Nr*   r-   r  r   r   s   &&r3   test_names_option_wrong_typerR    s1    	y)H	J	J"4VD 
K	J	J	Jr   c                    \         P                  ! \        R R7      ;_uu_ 4        \        WR7       RRR4       R#   + '       g   i     R# ; i)z'utf-8' codec can't decoder(   rW   Nr*   r-   UnicodeDecodeErrorr   xml_baby_namesrD   s   &&r3   test_wrong_encodingrX  	  s-    	)2N	P	P/ 
Q	P	P	Ps	   <A	c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RVR7       RRR4       R#   + '       g   i     R# ; i)zLUTF-16 stream does not start with BOM|'utf-16(-le)?' codec can't decode byter(   zUTF-16rH   rD   N)r*   r-   UnicodeErrorr   rV  s   &&r3   test_utf16_encodingr\    s>    	5
 
 	(6B
 
 
 
r   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RVR7       RRR4       R#   + '       g   i     R# ; i)zunknown encoding: UFT-8r(   zUFT-8rZ  N)r*   r-   LookupErrorr   rV  s   &&r3   test_unknown_encodingr_    s0    	{+D	F	F'&A 
G	F	F	Fr   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RVR7       RRR4       R#   + '       g   i     R# ; i)z'ascii' codec can't decode byter(   asciirZ  NrT  rV  s   &&r3   test_ascii_encodingrb    s1    	)2S	U	U'&A 
V	U	U	Ur   c                :   \         P                  ! R 4       \        V R RR7      p\        V RRR7      p\        V R RR. RO/R7      p\        V RRR. RO/R7      p\        P                  ! W4       \        P                  ! W$4       \        P                  ! W44       R# )	r&   z
ISO-8859-1rD   rH   rB   z
iso-8859-1rm   )rD   rH   rZ   N)rankmalename
femalenamera   )rW  df_xpath_lxmldf_xpath_etreerg   rh   s   &    r3   %test_parser_consistency_with_encodingrj  #  s    
^F\RMnW|TN<=	L <=	M -8.8,6r@   c                     \         P                  ! R 4       Rp \         P                  ! \        RR7      ;_uu_ 4        \	        \        V 4      R RR7       RRR4       R#   + '       g   i     R# ; i)r&   -<data>
  <row>
    <a>c</a>
  </row>
</data>
zencoding Noner(   Nrd  )r*   r+   r-   r  r   r   )rJ   s    r3   test_wrong_encoding_for_lxmlrm  :  sI    
D 
y	8	8$> 
9	8	8	8s   AA0	c                     R p \        \        V 4      RRR7      p\        RR./4      p\        P                  ! W4       R# )rl  rB   Nrd  r   c)r   r   r   rb   rc   )rJ   resultexpecteds      r3   test_none_encoding_etreerr  G  s;    D htnWtDF#u&H&+r@   c                    \         P                  ! \        R R7      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     R# ; i)z7lxml not found, please install or use the etree parser.r(   N)r*   r-   ImportErrorr   r   s   &r3   test_default_parser_no_lxmlru  W  s8    	U
 
 	
 
 
 
s	   ;A	c                    \         P                  ! \        R R7      ;_uu_ 4        \        V RR7       RRR4       R#   + '       g   i     R# ; i)z,Values for parser can only be lxml or etree.r(   bs4rW   Nr   r   s   &r3   test_wrong_parserrx  _  s:    	I
 
 	5)
 
 
 
	   =A	c                    \         P                  ! R 4       \        V RRR/VR7      p\        V R. RO/R7      p\        P                  ! \
        V4       \        P                  ! \
        V4       R# )	r&   .//k:Placemarkkr
  r   r   
stylesheet	Placemarkr(  N)r   r   r   r   r    r"   )r*   r+   r   rb   rc   df_kml)r  xsl_flatten_docdf_stylers   s   &&  r3   test_stylesheet_filer  i  sj    
9:"	H  	
G &(+&'*r@   c           	         \         P                  ! R 4       \        YVR8X  d   RMRR7      ;_uu_ 4       p\        V RRR/VR7      pRRR4       \        P
                  ! \        X4       R#   + '       g   i     L-; i	r&   r6   rF   NrG   r{  r|  r
  r}  r*   r+   r   r   rb   rc   r  r  r  r>   r   r  s   &&&  r3   test_stylesheet_file_liker    f    
	og$	O	OST"=>	
 
P &(+ 
P	O   A,,A<	c                r   \         P                  ! R 4       \        YVR8X  d   RMRR7      ;_uu_ 4       pVR8X  d   \        VP	                  4       4      pM\        VP	                  4       4      pRRR4       \        V RRR/XR	7      p\        P                  ! \        V4       R#   + '       g   i     L>; i)
r&   r6   rF   NrG   r5   r{  r|  r
  r}  )
r*   r+   r   r   rQ   r   r   rb   rc   r  )r  r  r>   r   xsl_objr  s   &&&   r3   test_stylesheet_ior    s      
og$	O	OST4<affh'Gqvvx(G	 
P 9:	H &(+ 
P	Os   ;B&&B6	c           	         \         P                  ! R 4       \        YVR8X  d   RMRR7      ;_uu_ 4       p\        V RRR/VR7      pRRR4       \        P
                  ! \        X4       R#   + '       g   i     L-; ir  r  r  s   &&&  r3   test_stylesheet_buffered_readerr    r  r  c                     \         P                  ! R 4       Rp Rp\        \        V 4      4      p\        \        V 4      \        V4      R7      p\        P
                  ! W#4       R# )r&   r   u  <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>
 <xsl:strip-space elements="*"/>

 <xsl:template match="node()|@*">
     <xsl:copy>
       <xsl:apply-templates select="node()|@*"/>
     </xsl:copy>
 </xsl:template>

 <xsl:template match="中文標籤">
     <根>
       <xsl:apply-templates />
     </根>
 </xsl:template>

</xsl:stylesheet>r~  N)r*   r+   r   r   rb   rc   )r   xsldf_origr  s       r3   test_style_charsetr    sN    

HCC& x}%G(3-@H',r@   c                    \         P                  ! R 4      p\         P                  ! VP                  RR7      ;_uu_ 4        \	        WR7       RRR4       R#   + '       g   i     R# ; i)r   zdocument is not a stylesheetr(   r  N)r*   r+   r-   XSLTParseErrorr   )r  rd   r   s   && r3   test_not_stylesheetr    sO    $$\2J	!!*H
 
 	#:
 
 
 
s   AA)	c                    \         P                  ! R 4      pRp\         P                  ! VP                  RR7      ;_uu_ 4        \	        V \        V4      R7       RRR4       R#   + '       g   i     R# ; i)r   a  <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                              xmlns:k="http://www.opengis.net/kml/2.2"/>
    <xsl:output method="xml" omit-xml-declaration="yes"
                cdata-section-elements="k:description" indent="yes"/>
    <xsl:strip-space elements="*"/>

    <xsl:template match="node()|@*">
     <xsl:copy>
       <xsl:apply-templates select="node()|@*"/>
     </xsl:copy>
    </xsl:template>

    <xsl:template match="k:MultiGeometry|k:LineString">
        <xsl:apply-templates select='*'/>
    </xsl:template>

    <xsl:template match="k:description|k:Snippet|k:Style"/>
</xsl:stylesheet>z(Extra content at the end of the documentr(   r  N)r*   r+   r-   r   r   r   r  r   r  s   &  r3   test_incorrect_xsl_syntaxr    s^    $$\2JC( 
!!)S
 
 	#>
 
 
 
   A$$A5	c                    \         P                  ! R 4      pRp\         P                  ! VP                  RR7      ;_uu_ 4        \	        V \        V4      R7       RRR4       R#   + '       g   i     R# ; i)r   a  <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                              xmlns:k="http://www.opengis.net/kml/2.2">
    <xsl:output method="xml" omit-xml-declaration="yes"
                cdata-section-elements="k:description" indent="yes"/>
    <xsl:strip-space elements="*"/>

    <xsl:template match="node(*)|@*">
     <xsl:copy>
       <xsl:apply-templates select="node()|@*"/>
     </xsl:copy>
    </xsl:template>

    <xsl:template match="k:MultiGeometry|k:LineString">
        <xsl:apply-templates select='*'/>
    </xsl:template>

    <xsl:template match="k:description|k:Snippet|k:Style"/>
</xsl:stylesheet>zfailed to compiler(   r  N)r*   r+   r-   r  r   r   r  s   &  r3   test_incorrect_xsl_evalr    sR    $$\2JC( 
z008K	L	L#> 
M	L	L	Lr  c                    \         P                  ! R 4      pRp\         P                  ! VP                  RR7      ;_uu_ 4        \	        V \        V4      R7       RRR4       R#   + '       g   i     R# ; i)r   ag  <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" encoding="utf-8" indent="yes" />
    <xsl:strip-space elements="*"/>

    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:copy-of select="document('non_existent.xml')/*"/>
        </xsl:copy>
    </xsl:template>
</xsl:stylesheet>zCannot resolve URIr(   r  N)r*   r+   r-   XSLTApplyErrorr   r   r  s   &  r3   test_incorrect_xsl_applyr    sR    $$\2J
C 
z008L	M	M#> 
N	M	M	Mr  c                    \         P                  ! R 4       VR,          p\         P                  ! \        RR7      ;_uu_ 4        \	        WR7       RRR4       R#   + '       g   i     R# ; i)r   zflatten_doesnt_exist.xslr   r(   r  N)r*   r+   r-   r.   r   )r  xml_data_pathr  s   && r3   test_wrong_stylesheetr  %  sR    
%
4
4C	!I
 
 	#4
 
 
 
s   AA,	c                ^   \         P                  ! R 4       \        YVR8X  d   RMRR7      ;_uu_ 4       pVR8X  d   \        VP	                  4       4      pM\        VP	                  4       4      p\        WR7       VP                  '       d   Q h RRR4       R#   + '       g   i     R# ; i)r&   r6   rF   NrG   r5   r  )r*   r+   r   r   rQ   r   r   r   )r  r  r>   r   r  s   &&&  r3   test_stylesheet_file_closer  0  s|      
og$	O	OST4<affh'Gqvvx(G#8888|8 
P	O	O	Os   ABB,	c                    \         P                  ! R 4       \         P                  ! \        RR7      ;_uu_ 4        \	        V RVR7       RRR4       R#   + '       g   i     R# ; i)r&   z*To use stylesheet, you need lxml installedr(   rB   )rD   r~  Nr   )r  r  s   &&r3   test_stylesheet_with_etreer  A  sK    
	G
 
 	#GP
 
 
 
r   c                    \         P                  ! R 4      p\         P                  ! VP                  4      ;_uu_ 4        \	        WR7       RRR4       R#   + '       g   i     R# ; i)r   r  N)r*   r+   r-   r   r   )r   r  r   s   && r3   test_empty_stylesheetr  I  s?    $$\2J	z00	1	1#4 
2	1	1	1s   AA'	c                   \        YVR 8X  d   RMRR7      ;_uu_ 4       pVR 8X  dR   VR8X  dK   \        P                  ! \        RR7      ;_uu_ 4        \	        VVR. RO/R7       RRR4        RRR4       R# \	        VVR. RO/R7      p RRR4       \        R. ROR	. ROR. ROR
. ROR. RO/4      p\        P                  ! XV4       R#   + '       g   i     Ln; i  + '       g   i     L[; ir6   rF   NrG   r&   z.reading file objects must return bytes objectsr(   rX   r\   r]   r^   r_   r`   rY   r[   rw   r{   r|   r}   r   )r   r*   r-   r  r   r   rb   rc   )rd   rD   r>   r   df_fileliker   s   &&&   r3   test_file_like_iterparser  Q  s    	i43;D	I	IQ3;6V+"R  ! P  
J	I #!#STK 
J( 6IL&*	
K +{39  
J	Is)   3CC	%	C8CCCC.	c                   VR 8X  d   \         M\        p\        T TVR 8X  d   RMRR7      ;_uu_ 4       pV! VP                  4       4      ;_uu_ 4       pVR 8X  dZ   VR8X  dS   \        P
                  ! \        RR7      ;_uu_ 4        \        VVR. RO/R7       RRR4        RRR4       RRR4       R# \        VVR. RO/R7      p RRR4       RRR4       \        R. ROR	. ROR. ROR
. ROR. RO/4      p\        P                  ! XV4       R#   + '       g   i     L~; i  + '       g   i     Lc; i  + '       g   i     Ln; ir  )r   r   r   rQ   r*   r-   r  r   r   rb   rc   )rd   rD   r>   funcIOr   b	df_fileior   s   &&&     r3   test_file_io_iterparser  s  s%   X'F	 CKT
 
 
AFFHs{v/]]&V  %"$T#  
 
& %! P	 
6 6IL&*	
K )[1=  
 
sG   D43D!	D	D!	!D43D!	D4DD!	!D1,D44E	c                b   \        VR R7      ;_uu_ 4       pVP                  VP                  4       R7       \        P                  ! \
        RR7      ;_uu_ 4        \        VP                  V R. RO/R7       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)	rF   rG   rk   )iterparse is designed for large XML filesr(   rm   rY   Nr   r   r   date)r   ro   rQ   r*   r-   r   r   r   )rD   rq   r   r   s   &&& r3   test_url_path_errorr    s     
h	)	)Q   2]] K
 
  "GH
 
*	)
 
 
*	)	)s$   ABB
	8B
BBB.	c           	         VR ,          p\         P                  W0VR7       \        P                  ! \        RR7      ;_uu_ 4        \        VV R. RO/VR7       RRR4       R#   + '       g   i     R# ; i)zgeom_xml.ziprD   rO   r  r(   rm   rD   rZ   rO   Nr  )geom_dfto_xmlr*   r-   r   r   )rD   rS   tmp_pathr   s   &&& r3   test_compression_errorr    se    n$DNN44DNE	G
 
 	CD(		

 
 
 
s   A##A4	c                    \         P                  ! \        R R7      ;_uu_ 4        \        V V. ROR7       RRR4       R#   + '       g   i     R# ; i)z&list is not a valid type for iterparser(   rY   Nr[   rQ  r   s   &&r3   test_wrong_dict_typer    s5    	y(P	Q	QF	
 
R	Q	Q	QrO  c                    \         P                  ! \        R R7      ;_uu_ 4        \        WRR/R7       RRR4       R#   + '       g   i     R# ; i)z8<class 'str'> is not a valid type for value in iterparser(   rX   r\   rY   NrQ  r   s   &&r3   test_wrong_dict_valuer    s?    	S
 
 	fj5IJ
 
 
 
r  c           
         R pVP                  VRR7       \        P                  ! \        RR7      ;_uu_ 4        \	        VV R.R. R	O/R7       RRR4       R#   + '       g   i     R# ; i)
a  <?xml version='1.0' encoding='utf-8'?>
  <row>
    <shape>square</shape>
    <degrees>00360</degrees>
    <sides>4.0</sides>
    <date>2020-01-01</date>
   </row>
  <row>
    <shape>circle</shape>
    <degrees>00360</degrees>
    <sides/>
    <date>2021-01-01</date>
  </row>
  <row>
    <shape>triangle</shape>
    <degrees>00180</degrees>
    <sides>3.0</sides>
    <date>2022-01-01</date>
  </row>
rF   rG   zDExtra content at the end of the document|junk after document elementr(   r  rm   )rD   parse_datesrZ   Nr  )rI   r*   r-   r   r   )rD   r   bad_xmls   && r3   test_bad_xmlr    sh    G* 73	T
 
 	CD		
	
 
 
 
s   AA*	c                    R p\        \        V4      RV R7      p\        W!V RRR./R7      p\        RRR.RR	R
./4      p\        P
                  ! W54       \        P
                  ! WE4       R# )a-  <!-- comment before root -->
<shapes>
  <!-- comment within root -->
  <shape>
    <name>circle</name>
    <type>2D</type>
  </shape>
  <shape>
    <name>sphere</name>
    <type>3D</type>
    <!-- comment within child -->
  </shape>
  <!-- comment within root -->
</shapes>
<!-- comment after root -->r6  r   r   r   r?  rY   r   r=  r;  r<  Nr   r   s   &&    r3   test_commentr    sz    C" ZGH v'FF;K1LG Xx(T4L	
K (0'/r@   c                    R p\        \        V4      RV R7      p\        W!V RRR./R7      p\        RRR.RR	R
./4      p\        P
                  ! W54       \        P
                  ! WE4       R# )a8  <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE non-profits [
    <!ELEMENT shapes (shape*) >
    <!ELEMENT shape ( name, type )>
    <!ELEMENT name (#PCDATA)>
]>
<shapes>
  <shape>
    <name>circle</name>
    <type>2D</type>
  </shape>
  <shape>
    <name>sphere</name>
    <type>3D</type>
  </shape>
</shapes>r6  r   r   r   r?  rY   r   r=  r;  r<  Nr   r   s   &&    r3   test_dtdr    z    C$ ZGH v'FF;K1LG Xx(T4L	
K (0'/r@   c                    R p\        \        V4      RV R7      p\        W!V RRR./R7      p\        RRR.RR	R
./4      p\        P
                  ! W54       \        P
                  ! WE4       R# )am  <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="style.xsl"?>
<?display table-view?>
<?sort alpha-ascending?>
<?textinfo whitespace is allowed ?>
<?elementnames <shape>, <name>, <type> ?>
<shapes>
  <shape>
    <name>circle</name>
    <type>2D</type>
  </shape>
  <shape>
    <name>sphere</name>
    <type>3D</type>
  </shape>
</shapes>r6  r   r   r   r?  rY   r   r=  r;  r<  Nr   r   s   &&    r3   test_processing_instructionr  6  r  r@   c           	         \         P                  ! \        R R7      ;_uu_ 4        \        V VR. RO/R7       RRR4       R#   + '       g   i     R# ; i)z+No result from selected items in iterparse.r(   noderY   Nattr1elem1elem2elem3)r*   r-   r   r   r   s   &&r3   test_no_resultr  Z  sG    	H
 
 	CD	

 
 
 
   AA	c           	         \         P                  ! \        R R7      ;_uu_ 4        \        V VR. RO/R7       RRR4       R#   + '       g   i     R# ; i)zNo columns to parse from filer(   rX   rY   Nr  )r*   r-   r   r   r   s   &&r3   test_empty_datar  e  s;    	~-L	M	MCD	
 
N	M	M	Mr  c                     \         P                  ! R 4       Rp Rp\        \        V 4      RRR.\        V4      R7      p\	        R^ R^R^R	^R
^R/R^ R^R^R^R^R//4      p\
        P                  ! W24       R# )r&   a  <?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
  <cd>
    <title>Hide your heart</title>
    <artist>Bonnie Tyler</artist>
    <country>UK</country>
    <company>CBS Records</company>
    <price>9.90</price>
    <year>1988</year>
  </cd>
  <cd>
    <title>Greatest Hits</title>
    <artist>Dolly Parton</artist>
    <country>USA</country>
    <company>RCA</company>
    <price>9.90</price>
    <year>1982</year>
  </cd>
  <cd>
    <title>Still got the blues</title>
    <artist>Gary Moore</artist>
    <country>UK</country>
    <company>Virgin records</company>
    <price>10.20</price>
    <year>1990</year>
  </cd>
  <cd>
    <title>Eros</title>
    <artist>Eros Ramazzotti</artist>
    <country>EU</country>
    <company>BMG</company>
    <price>9.90</price>
    <year>1997</year>
  </cd>
  <cd>
    <title>One night only</title>
    <artist>Bee Gees</artist>
    <country>UK</country>
    <company>Polydor</company>
    <price>10.90</price>
    <year>1998</year>
  </cd>
  <cd>
    <title>Sylvias Mother</title>
    <artist>Dr.Hook</artist>
    <country>UK</country>
    <company>CBS</company>
    <price>8.10</price>
    <year>1973</year>
  </cd>
  <cd>
    <title>Maggie May</title>
    <artist>Rod Stewart</artist>
    <country>UK</country>
    <company>Pickwick</company>
    <price>8.50</price>
    <year>1990</year>
  </cd>
  <cd>
    <title>Romanza</title>
    <artist>Andrea Bocelli</artist>
    <country>EU</country>
    <company>Polydor</company>
    <price>10.80</price>
    <year>1996</year>
  </cd>
  <cd>
    <title>When a man loves a woman</title>
    <artist>Percy Sledge</artist>
    <country>USA</country>
    <company>Atlantic</company>
    <price>8.70</price>
    <year>1987</year>
  </cd>
  <cd>
    <title>Black angel</title>
    <artist>Savage Rose</artist>
    <country>EU</country>
    <company>Mega</company>
    <price>10.90</price>
    <year>1995</year>
  </cd>
  <cd>
    <title>1999 Grammy Nominees</title>
    <artist>Many</artist>
    <country>USA</country>
    <company>Grammy</company>
    <price>10.20</price>
    <year>1999</year>
  </cd>
  <cd>
    <title>For the good times</title>
    <artist>Kenny Rogers</artist>
    <country>UK</country>
    <company>Mucik Master</company>
    <price>8.70</price>
    <year>1995</year>
  </cd>
  <cd>
    <title>Big Willie style</title>
    <artist>Will Smith</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>9.90</price>
    <year>1997</year>
  </cd>
  <cd>
    <title>Tupelo Honey</title>
    <artist>Van Morrison</artist>
    <country>UK</country>
    <company>Polydor</company>
    <price>8.20</price>
    <year>1971</year>
  </cd>
  <cd>
    <title>Soulsville</title>
    <artist>Jorn Hoel</artist>
    <country>Norway</country>
    <company>WEA</company>
    <price>7.90</price>
    <year>1996</year>
  </cd>
  <cd>
    <title>The very best of</title>
    <artist>Cat Stevens</artist>
    <country>UK</country>
    <company>Island</company>
    <price>8.90</price>
    <year>1990</year>
  </cd>
  <cd>
    <title>Stop</title>
    <artist>Sam Brown</artist>
    <country>UK</country>
    <company>A and M</company>
    <price>8.90</price>
    <year>1988</year>
  </cd>
  <cd>
    <title>Bridge of Spies</title>
    <artist>T`Pau</artist>
    <country>UK</country>
    <company>Siren</company>
    <price>7.90</price>
    <year>1987</year>
  </cd>
  <cd>
    <title>Private Dancer</title>
    <artist>Tina Turner</artist>
    <country>UK</country>
    <company>Capitol</company>
    <price>8.90</price>
    <year>1983</year>
  </cd>
  <cd>
    <title>Midt om natten</title>
    <artist>Kim Larsen</artist>
    <country>EU</country>
    <company>Medley</company>
    <price>7.80</price>
    <year>1983</year>
  </cd>
  <cd>
    <title>Pavarotti Gala Concert</title>
    <artist>Luciano Pavarotti</artist>
    <country>UK</country>
    <company>DECCA</company>
    <price>9.90</price>
    <year>1991</year>
  </cd>
  <cd>
    <title>The dock of the bay</title>
    <artist>Otis Redding</artist>
    <country>USA</country>
    <COMPANY>Stax Records</COMPANY>
    <PRICE>7.90</PRICE>
    <YEAR>1968</YEAR>
  </cd>
  <cd>
    <title>Picture book</title>
    <artist>Simply Red</artist>
    <country>EU</country>
    <company>Elektra</company>
    <price>7.20</price>
    <year>1985</year>
  </cd>
  <cd>
    <title>Red</title>
    <artist>The Communards</artist>
    <country>UK</country>
    <company>London</company>
    <price>7.80</price>
    <year>1987</year>
  </cd>
  <cd>
    <title>Unchain my heart</title>
    <artist>Joe Cocker</artist>
    <country>USA</country>
    <company>EMI</company>
    <price>8.20</price>
    <year>1987</year>
  </cd>
</catalog>
a7  <?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th style="text-align:left">Title</th>
      <th style="text-align:left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
z.//tr[td and position() <= 6]r]   artist)r   r3  r~  zEmpire BurlesquezHide your heartzGreatest HitszStill got the bluesErosz	Bob DylanzBonnie TylerzDolly Partonz
Gary MoorezEros RamazzottiN)r*   r+   r   r   r   rb   rc   )r   r  df_xslr   s       r3   test_online_stylesheetr  n  s    
TCjC2 -!C=	F %$?(6 ;>><$	
K& +.r@   c           	         VR ,          p\         P                  VRWR7       \        W@VR7      p\        VVVV R. RO/VR7      p\        P
                  ! V\         4       \        P
                  ! V\         4       R# )ztest.xmlF)r$   rD   rO   r  rm   r  Nrn   )r  r  r   rU   rb   rc   )rD   rS   r  r   rR   rr   rs   s   &&&&   r3   test_compression_readr  ~  so    :%INN9E&NW	>NOH%78$G (G,'7+r@   c           	        TpTpWE8X  d   \         P                  ! V R V 24       R\        R3R\        R3R\        R3R\        R3/p\        R	R
R7      pVe   VP                  R3VR&   \        RR
R7      pVe   \        R3VR&   We,          w  r\        P                  W0VR7       \         P                  ! WR7      ;_uu_ 4        \        W0VR7       RRR4       R#   + '       g   i     R# ; i)z == bz2zInvalid data streamgzipzNot a gzipped filezipzFile is not a zip filetarz%file could not be opened successfully	zstandardignore)errorsNzUnknown frame descriptorzstdlzmaz%Input format not supported by decoderxzr  r(   )r*   skipr/   r
   r   r   	ZstdErrorr   r  r  r-   r   )rD   rO   rS   r   actual_compressionattempted_compressionr  r  r  	error_cls	error_strs   &&&&       r3   test_wrong_compressionr    s    $,2)*$/D.EFG 	././
45	BC	F &k(CD..*DEv%fX>D!#JKt!8INN99KNL	y	2	27LM 
3	2	2	2s   CC/	c                    \         P                  ! \        R R7      ;_uu_ 4        \        WRR7       RRR4       R#   + '       g   i     R# ; i)zUnrecognized compression typer(   7zr  Nr   )rD   r   s   &&r3   test_unsupported_compressionr    s.    	z)H	I	It< 
J	I	I	Iry  c                    \         P                  ! R 4       \         P                  ! R4       RV P                   R2p\        VRVR7      p\        VRVR7      p\        P
                  ! W44       R# )s3fsr&   zs3://z
/books.xml)rD   storage_optionsrB   N)r*   r+   r   r   rb   rc   )s3_bucket_public_with_datas3sos3r   r   s   &&   r3   test_s3_parser_consistencyr    s`     
+001	<Br&$?G7DAH',r@   c                   R p\         P                  ! RV4      ;_uu_ 4        \        \        V4      WR7      pRRR4       VR8X  d<   \        P
                  ! R4      p\         P                  ! VP                  4       4      pM\         P                  ! V4      p\        R\        RR.VR7      R	\        ^^.R
R7      R\        RR.RR7      R\        RR.VR7      R\        ^\        .R
R7      R\        R\        .RR7      R\        \        \        .R
R7      R\        RR.RR7      R\        R\        .RR7      /	4      pVR8X  d{   \        P
                  ! R4      p^ RIHp	 \        VP                   U
u/ uF"  p
W! VP                  W,          RR7      4      bK$  	  up
4      pV	! VP                  RR.4      4      VR&   \         P"                  ! XVRR7       R#   + '       g   i     EL; iu up
i )a;  <?xml version='1.0' encoding='utf-8'?>
<data xmlns="http://example.com">
<row>
  <a>x</a>
  <b>1</b>
  <c>4.0</c>
  <d>x</d>
  <e>2</e>
  <f>4.0</f>
  <g></g>
  <h>True</h>
  <i>False</i>
</row>
<row>
  <a>y</a>
  <b>2</b>
  <c>5.0</c>
  <d></d>
  <e></e>
  <f></f>
  <g></g>
  <h>False</h>
  <i></i>
</row>
</data>zmode.string_storage)rD   dtype_backendNpyarrowr   xyr   r  Int64ro  r   g      @Float64der   ghTFbooleani)ArrowExtensionArray)from_pandas)check_column_type)pdoption_contextr   r   r*   r+   
ArrowDtyper   StringDtyper   r   r   pandas.arraysr	  columnsarrayrb   rc   )rD   string_storager  using_infer_stringrJ   rp  pastring_dtyperq  r	  cols   &&&&       r3   test_read_xml_nullable_dtypesr    s   D4 
		0.	A	A(4.U 
B 	!  +}}RYY[1~~n5c
,7Ag.c
)4d<8Bw/b	3R0uY795
	
H 	!  +5 $+++C ((-T)RSS+
 ,BHHdD\,BC &(eDK 
B	A	A8s   G5(G/G,	c                     R p \         P                  ! \        V R7      ;_uu_ 4        \        RRR7       RRR4       R#   + '       g   i     R# ; i)zPdtype_backend numpy is invalid, only 'numpy_nullable' and 'pyarrow' are allowed.r(   testnumpy)r  Nr   r1   s    r3   test_invalid_dtype_backendr    s8    	!  
z	-	-w/ 
.	-	-	-s	   ?A	r   r   )
__future__r   ior   r   r  r   r   tarfiler   urllib.errorr   xml.etree.ElementTreer	   zipfiler
   r  npr*   pandas.compatr   pandas.compat._optionalr   pandas.errorsr   r   pandas.util._test_decoratorsutil_test_decoratorstdpandasr  r   r   r   pandas._testing_testingrb   pandas.io.commonr   pandas.io.xmlr   r   r  r0   r   r   r  r4   fixturer>   r;   
skip_if_norD   rM   rU   ri   marknetwork
single_cpurt   r   r   r   r   r   r   r   parametrizer   r   skipifr   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r   r#  r+  r4  r@  rF  rL  rN  rR  rX  r\  r_  rb  rj  rm  rr  skip_if_installedru  rx  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r@   r3   <module>r9     s\   "  	  " ,     > * )  
  ' "l 1?!RVVQ (* 
zzzzz
 	(!!!!
 	~~~~~
 	Aq!Q1aAq1     
 	9 9 9$ 9" 9uI
=hR (Uk
\# c{# $ V2==3HI7ST U)
-7* 
-  
-0".,/0/2/0> S	*& +&$ S	*' +' D!EF* G* /  /& M  M/0j>?>0604-&-,A
O
N T
+

 ,

 0*00(VO0O!2N02$0N(0V/0dK
E0
CB
B
7.
?
,  f *+6
,,,
,-:;?:?6?&5"Q "ws| <=5 >54D'2T 
  


K!
H 0F!0H!0H

J/`,&N6= -  -CEL0r@   