a XC?hc0�@s�ddlZddlZddlmZgd�ZGdd�d�ZGdd�d�Zdd �ZGd d �d e �Z Gd d �d e �Z Gdd�d�Z [Gdd�d�Z Gdd�d�ZdS)�N)� NodeFilter)� DOMBuilder�DOMEntityResolver�DOMInputSourcec@sXeZdZdZdZdZdZdZdZdZ dZ dZ dZ dZ dZdZdZdZdZdZdZdZdS)�Options�TFN)�__name__� __module__� __qualname__� namespaces�namespace_declarations� validation�external_parameter_entities�external_general_entitiesZexternal_dtd_subset�validate_if_schemaZvalidate�datatype_normalization�create_entity_ref_nodes�entities�whitespace_in_element_content�cdata_sections�comments�charset_overrides_xml_encoding�infoset�supported_mediatypes_only� errorHandler�filter�rr�7/opt/alt/python39/lib64/python3.9/xml/dom/xmlbuilder.pyr s& rc@seZdZdZdZdZdZdZdZdZ eeee fZ dd�Z dd �Z d d �Z d d �Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdgdgdgdgdgdgd gd!gd"gd#gd"d$gd%gd&gd'gd(gd)gd*gd+gd,gd-gggd.�d/gd0gd1gd2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�ZdS)=rNr���cCs t�|_dS�N)r�_options��selfrrr�__init__9szDOMBuilder.__init__cCs|jSr!��entityResolverr#rrr�_get_entityResolver<szDOMBuilder._get_entityResolvercCs ||_dSr!r&)r$r'rrr�_set_entityResolver>szDOMBuilder._set_entityResolvercCs|jSr!�rr#rrr�_get_errorHandlerAszDOMBuilder._get_errorHandlercCs ||_dSr!r*)r$rrrr�_set_errorHandlerCszDOMBuilder._set_errorHandlercCs|jSr!�rr#rrr� _get_filterFszDOMBuilder._get_filtercCs ||_dSr!r-)r$rrrr� _set_filterHszDOMBuilder._set_filtercCs�|�|�rr|rdpd}z|jt|�|f}Wn&tyRtj�d|f�d�Yq�0|D]\}}t|j||�qXntj� dt |���dS)Nrrzunsupported feature: %rzunknown feature: ) �supportsFeature� _settings� _name_xform�KeyError�xml�dom�NotSupportedErr�setattrr"� NotFoundErr�repr)r$�name�stateZsettings�valuerrr� setFeatureKs   �� zDOMBuilder.setFeaturecCst|jt|��Sr!)�hasattrr"r2)r$r:rrrr0YszDOMBuilder.supportsFeaturecCst|�|rdpdf}||jvS)Nrr)r2r1)r$r:r;�keyrrr� canSetFeature\szDOMBuilder.canSetFeature�r r�r r�r r�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr) rArHrIrKrO)rrrNrRrT�rr�r r�r r)rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrT)rr)rrrUrVrWcCs�t|�}zt|j|�WSty�|dkrn|j}|joh|joh|joh|joh|jpf|j pf|j pf|j pf|j YSt j�dt|���Yn0dS)Nrzfeature %s not known)r2�getattrr"�AttributeErrorrrrrr rrrrr4r5r8r9)r$r:Zxname�optionsrrr� getFeature�s0 �������� zDOMBuilder.getFeaturecCs.|jr|j�d|�}nt��d|�}|�|�Sr!)r'� resolveEntityr�parse)r$�uri�inputrrr�parseURI�szDOMBuilder.parseURIcCsRt�|j�}|j|_|j|_|j}|durF|jrFddl}|j�|j�}|� ||�S�Nr) �copyr"rr� byteStream�systemId�urllib.request�requestZurlopen�_parse_bytestream)r$r_rZ�fp�urllibrrrr]�s zDOMBuilder.parsecCs||jvrtd��td��dS)Nznot a legal actionzHaven't written this yet...)�_legal_actions� ValueError�NotImplementedError)r$r_Zcnode�actionrrr�parseWithContext�s zDOMBuilder.parseWithContextcCs ddl}|jj�|�}|�|�Sra)Zxml.dom.expatbuilderr5Z expatbuilderZ makeBuilderZ parseFile)r$�streamrZr4Zbuilderrrrrg�szDOMBuilder._parse_bytestream)rr r r'rrZACTION_REPLACEZACTION_APPEND_AS_CHILDRENZACTION_INSERT_AFTERZACTION_INSERT_BEFORErjr%r(r)r+r,r.r/r=r0r@r1r[r`r]rnrgrrrrr,s�� �������������������� ����= rcCs|���dd�S)N�-�_)�lower�replace)r:rrrr2�sr2c@s0eZdZdZdd�Zdd�Zdd�Zdd �Zd S) r)�_openerc Cs�t�}||_||_|���|�|_|�|�|_ddl}ddl }|j � |�}|\}}} } } } | r�| � d�s�|� | �d} ||| | | | f}|j �|�|_|S)Nr�/)r�publicIdrd� _get_opener�openrc�_guess_media_encoding�encoding� posixpathZ urllib.parser]Zurlparse�endswith�dirnameZ urlunparse�baseURI) r$rvrd�sourcer{ri�partsZschemeZnetloc�path�paramsZqueryZfragmentrrrr\�s  zDOMEntityResolver.resolveEntitycCs0z|jWSty*|��|_|jYS0dSr!)rtrY�_create_openerr#rrrrw�s   zDOMEntityResolver._get_openercCsddl}|j��Sra)rerfZ build_opener)r$rirrrr��sz DOMEntityResolver._create_openercCsF|j��}d|vrB|��D]&}|�d�r|�dd�d��SqdS)Nz Content-Typezcharset=�=r)rc�infoZgetplist� startswith�splitrr)r$rr�Zparamrrrry�s    z'DOMEntityResolver._guess_media_encodingN)rr r � __slots__r\rwr�ryrrrrr�s rc@s�eZdZdZdd�Zdd�Zdd�Zdd �Zd d �Zd d �Z dd�Z dd�Z dd�Z dd�Z dd�Zdd�Zdd�Zdd�Zdd�Zd S)!r�rc�characterStream� stringDatarzrvrdr~cCs.d|_d|_d|_d|_d|_d|_d|_dSr!r�r#rrrr%szDOMInputSource.__init__cCs|jSr!�rcr#rrr�_get_byteStream szDOMInputSource._get_byteStreamcCs ||_dSr!r�)r$rcrrr�_set_byteStreamszDOMInputSource._set_byteStreamcCs|jSr!�r�r#rrr�_get_characterStreamsz#DOMInputSource._get_characterStreamcCs ||_dSr!r�)r$r�rrr�_set_characterStreamsz#DOMInputSource._set_characterStreamcCs|jSr!�r�r#rrr�_get_stringDataszDOMInputSource._get_stringDatacCs ||_dSr!r�)r$�datarrr�_set_stringDataszDOMInputSource._set_stringDatacCs|jSr!�rzr#rrr� _get_encodingszDOMInputSource._get_encodingcCs ||_dSr!r�)r$rzrrr� _set_encodingszDOMInputSource._set_encodingcCs|jSr!�rvr#rrr� _get_publicId!szDOMInputSource._get_publicIdcCs ||_dSr!r�)r$rvrrr� _set_publicId#szDOMInputSource._set_publicIdcCs|jSr!�rdr#rrr� _get_systemId&szDOMInputSource._get_systemIdcCs ||_dSr!r�)r$rdrrr� _set_systemId(szDOMInputSource._set_systemIdcCs|jSr!�r~r#rrr� _get_baseURI+szDOMInputSource._get_baseURIcCs ||_dSr!r��r$r^rrr� _set_baseURI-szDOMInputSource._set_baseURIN)rr r r�r%r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrs  rc@s:eZdZdZdZdZdZejZ dd�Z dd�Z d d �Z d S) �DOMBuilderFilterrrrr cCs|jSr!)� whatToShowr#rrr�_get_whatToShowBsz DOMBuilderFilter._get_whatToShowcCs|jSr!�� FILTER_ACCEPT�r$Zelementrrr� acceptNodeEszDOMBuilderFilter.acceptNodecCs|jSr!r�r�rrr�startContainerHszDOMBuilderFilter.startContainerN) rr r r�Z FILTER_REJECTZ FILTER_SKIPZFILTER_INTERRUPTrZSHOW_ALLr�r�r�r�rrrrr�1s r�c@s@eZdZdZdd�Zdd�Zdd�Zdd �Zd d �Zd d �Z dS)� DocumentLSFcCsdS)NFrr#rrr� _get_asyncSszDocumentLS._get_asynccCs|rtj�d��dS)Nz.asynchronous document loading is not supported)r4r5r6)r$�flagrrr� _set_asyncVs�zDocumentLS._set_asynccCs td��dS)Nz'haven't figured out what this means yet�rlr#rrr�abort[s�zDocumentLS.abortcCs td��dS�Nzhaven't written this yetr�r�rrr�loadaszDocumentLS.loadcCs td��dSr�r�)r$rrrr�loadXMLdszDocumentLS.loadXMLcCs*|dur|}n|j|ur"tj���|��Sr!)Z ownerDocumentr4r5ZWrongDocumentErrZtoxml)r$Zsnoderrr�saveXMLgs   zDocumentLS.saveXMLN) rr r Zasync_r�r�r�r�r�r�rrrrr�Nsr�c@s,eZdZdZdZdd�Zdd�Zdd�Zd S) �DOMImplementationLSrrcCsF|durtj�d��||jkr$t�S||jkr:tj�d��td��dS)NzschemaType not yet supportedz'asynchronous builders are not supportedzunknown value for mode)r4r5r6�MODE_SYNCHRONOUSr�MODE_ASYNCHRONOUSrk)r$�modeZ schemaTyperrr�createDOMBuilderss�  �z$DOMImplementationLS.createDOMBuildercCs td��dS)Nz-the writer interface hasn't been written yet!r�r#rrr�createDOMWriter~s�z#DOMImplementationLS.createDOMWritercCst�Sr!)rr#rrr�createDOMInputSource�sz(DOMImplementationLS.createDOMInputSourceN)rr r r�r�r�r�r�rrrrr�os  r�)rbZxml.domr4Zxml.dom.NodeFilterr�__all__rrr2�objectrrr�r�r�rrrr�s  %,1!