MINI SHELL

Server : Apache/2.2.2 (Fedora)
System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686
User : apache ( 48)
PHP Version : 5.2.9
Disable Function : NONE
Directory :  /proc/self/root/usr/lib/python2.4/site-packages/_xmlplus/parsers/xmlproc/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/lib/python2.4/site-packages/_xmlplus/parsers/xmlproc/dtdparser.pyo
mò
°‚¸<c@sVdZdkZeiZdkTdkTdefd„ƒYZdefd„ƒYZ	dS(sÖ
This module contains a DTD parser that reports DTD parse events to a listener.
Used by xmlproc to parse DTDs, but can be used for other purposes as well.

$Id: dtdparser.py,v 1.13 2002/04/13 19:10:40 larsga Exp $
N(t*t	DTDParsercBsFtZdZdd„Zd„Zd„Zd„Zd„Zdd„Zdd	„Z	d
„Z
d„Zd„Zd
„Z
d„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„Zd„Zd„Zd„Zd „Z d!„Z!d"d#„Z"d$„Z#RS(%s2A parser for XML DTDs, both internal and external.icCsÌ|i}|i|i|iƒ}|djo{|io)|o!t
|iƒ|_|i|Sn|io1|iƒd|_|i
ƒ|i||ƒSntƒ‚n|idƒ|_|i||i!S(Ni(tselftpostoldpostregexptsearchtdatatmotNonetfinaltrequiredtlentin_pereft
pop_entityt_skip_wstfind_regtOutOfDataExceptiontstart(RRRRR((tF/usr/lib/python2.4/site-packages/_xmlplus/parsers/xmlproc/dtdparser.pyRs	


	

cCs”t|i||iƒ}|djoE|io.|iƒd|_|iƒ|i	|ƒSnt
ƒ‚n|i|i|!}|t|ƒ|_|S(Niÿÿÿÿi(
tstring_findRRttargetRtnew_posR
RRtscan_toRtresR(RRRR((RR,s


	

cCsnt|i||iƒ}|djoE|io.|iƒd|_|iƒ|i	|ƒSnt
ƒ‚n|S(Niÿÿÿÿi(RRRRRRR
RRt	get_indexR(RRR((RR9s


	

cCs‘|i|it|ƒjoP|ioE|io.|iƒd|_|iƒ|i	|ƒSnt
ƒ‚n|i|i|it|ƒ!|jS(Ni(RtdatasizeRRtstrR
R
RRttest_strRR(RR((RRDs(

	

cCsº|i|it|ƒjoP|ioE|io.|iƒd|_|iƒ|i	|ƒSnt
ƒ‚n|i|i|it|ƒ!|jo|it|ƒ|_dSndSdS(Nii(RRRRRR
R
RRtnow_atRR(RR((RRNs(

	

'icCs|i}yrx,|i|itjo|id|_qW|o8|i|jo(|i|idjo|idƒnWntj
ou|io%|i	ƒd|_|i
ƒdSn|o8||ijo(|io|idƒqútƒ‚qÿnXdS(Nit%iºi(
RRRRt
whitespacet	necessarytreport_errort
IndexErrorR
RRR
R(RR R((RR]s"	.

	

cCs|i|ƒ|ipýy|idƒpdSnWntj
odSnX|iƒ}|idƒp|iddƒny|i	i
|ƒ}Wn'tj
o|id|ƒdSnX|i
ƒo/d|_|i|iƒ|iƒd|_n|idƒ|iƒndS(NRt;i½iÞii£(RRR tinternalRRt	_get_nametnameR!tdtdt
resolve_petenttKeyErrortis_internalR
tpush_entitytget_current_sysidtvalueR
tskip_ws(RR R&R)((RR/ss*

		
	

cCsƒ|i|idjoP|ioE|io.|iƒd|_|iƒ|i|ƒSnt	ƒ‚n|i
|i|iƒdjS(Nii(
RRRR
R
RRttest_regRRtmatchRR	(RR((RR0”s"

	

cCs|i|idjoP|ioE|io.|iƒd|_|iƒ|i|ƒSnt	ƒ‚n|i
|i|iƒ}|djo|it|iƒdSn|idƒ}||ijo;|io$|iƒd|_|idƒSnt	ƒ‚n||_|idƒS(Niit(RRRR
R
RRt	get_matchRRR1RR)R	R!treg2codetpatterntendtgroup(RRR6R)((RR3Ÿs("

	




	
	cCs_ti|ƒd|_d|_tƒ|_|i|_d|_d|_	d|_
g|_dS(Ni(tEntityParsert__init__RR$tseen_xmldeclt
DTDConsumerPER'tdtd_consumerR
tignores_enteredtincludes_enteredt
own_ent_stack(R((RR9»s
					cCsqti|ƒt|dƒo|iiƒnd|_d|_d|_d|_d|_	g|_
d|_dS(NR'i(R8tresetRthasattrR'R$R:R
R=R>R?tdtd_start_called(R((RR@Æs
						cCs|ip|iiƒndS(N(RRBR<t	dtd_start(R((Rt
parseStartÔs
cCs|iiƒdS(N(RR<tdtd_end(R((RtparseEndØscCs
||_dS(s/Tells the parser where to send DTD information.N(R'RR<(RR'((Rtset_dtd_consumerÛscCs
||_dS(s†Tells the parser where to mirror PE information (in addition to
        what goes to the DTD consumer and where to get PE information.N(R'R(RR'((Rtset_dtd_objectßscCs
||_dS(s9Tells the parser whether the DTD is internal or external.N(tyesnoRR$(RRI((Rtset_internaläscCs)d|_|_|_|_|_dS(sRemoves circular references.N(R	RR)R<R'tappterr(R((RtderefèscCsEyØ|i}|idjo|iƒn|iƒxu|i|ijoa|idƒo|iƒn-|idƒo|i	ƒn|idƒo|i
ƒnñ|idƒo|iƒnÓ|it
ƒo|iƒnµ|idƒo|i|iƒn‘|idƒo|i|iƒnm|idƒo|iƒnO|id	ƒo$|idjo|id
|_n|idƒ|idƒ|i}|iƒq7W|io!|idjo|id
ƒnWnftj
o&}|io
|‚qA||_n6tj
o)}|io
tƒ‚qA||_nXdS(sDoes the actual parsing.is	<!ELEMENTs<!ENTITYs	<!ATTLISTs
<!NOTATIONs<?s<!--s<![s]]>iiÅt>iãN(RRtpreposR=tparse_ignored_dataRRRtparse_elem_typetparse_entityt
parse_attlisttparse_notationR0t
reg_pe_reftparse_pe_reftparse_piR<t
parse_commenttparse_conditionalR>R!RR
RteR"(RRORZ((Rtdo_parseìsP	
 

	




cCsbti|dƒ|idƒod}ti|dƒnd}|iƒ}|idƒ|idƒ\}}|djod}|iƒ}nXd}|iƒo.ti|ƒddjo|id|ƒnt|iƒ|ƒ}|idƒo|idƒn|iƒ|oL|idƒo<|o|idƒn|iƒ|iƒ}|iƒnd}|id	ƒp|id
d	ƒn|o|oA|ii||ƒ|i|ijo|ii||ƒq#q^|ii|||ƒ|i|ijo|ii|||ƒq^n8|o|ii||ƒn|ii||||ƒdS(sParses an entity declaration.iRiR2iètNDATAiºiÛRNi½N(R8R/RRtpedeclR%tent_nametparse_external_idtpub_idtsys_idR	R$tparse_ent_repltexttent_valR-turlparseR!tjoin_sysidstndataR<tnew_parameter_entityR'tnew_external_petnew_general_entitytnew_external_entity(RR`RfR^RcRaR]R$((RRRsN

(

cCsk|idƒo
d}n<|idƒo
d}n"|iddƒ|idƒdS|i|i|ƒƒS(srParses an entity replacement text and resolves all character
        entity and parameter entity references in it.t"t'i¼RNN(RlRk(RRtdelimR!Rtparse_ent_litval(RRm((RRbZs


c	Csžd}d}xƒti||ƒ}|djoPn||||idƒ!}|idƒ}|||d!djo7t|d|ƒ}|djo|iddƒPn||dd	jot||d
|!ƒ}nt||d|!ƒ}|djp1|djp$|d
jp|djo
|djp]|djo<to!|djo|t|ƒ}q‰|id|ƒq|id|ƒn|t|ƒ}|d}q||djoÃt|d|ƒ}|djo|iddƒPn||d|!}yJ|ii|ƒ}|iƒo||i|iƒ}n|idƒWn#tj
o|id|ƒnX|d}q|idƒPqW|||S(NiR2iis&#R#iÿÿÿÿi½txii	i
i
i iÿiiíiÊRiÝiÞi¡(Rtvaltreg_litval_stopRtlitvalRR	RRtendposRR!tunhextdigstintt
using_unicodetxml_chrR&R'R(R)R+RnR.R*(	RRrR&RpRRRuR)Rs((RRnisT

A



cCs†|idƒ|iƒ}|idƒ|iddƒ\}}|iƒ|idƒp|iddƒn|i	i
|||ƒdS(sParses a notation declaration.iiRNi½N(RR/R%R&R_tpubidtsysidRR!R<tnew_notation(RRzRyR&((RRT¥s


cCsñ|itƒdd!}y|ii|ƒ}Wn'tj
o|id|ƒdSnX|i	ƒo1|i
|iƒ|iƒ|i
ƒ|iƒnZ|ii|iƒ|iƒƒ}|i}|idƒz|i|ƒWd|i|ƒXdS(s)Parses a reference to a parameter entity.iiÿÿÿÿiÞNi(RR3RUR&R'R(R)R*R!R+R,R-R.R[Rtpubrestresolve_pe_pubidt	get_pubidt	get_sysidRzR$RvRJtopen_entity(RR&RvRzR)((RRV²s&	

	
cCsX|idƒ|iƒ}|idƒx|idƒp
|iƒ}|idƒ|itƒo|itƒ}nÖ|i
dƒo)|idƒd|itdƒf}n|i
dƒon|i
d|_
|itdƒ}h}xa|D]7}|i|ƒo|id|fƒqíd||<qíWn|idƒ|idƒdS|idƒ|id	ƒp|id
ƒod}|iƒ}n|i
dƒod}d}nm|i
d
ƒod
}d}nM|i
dƒo#|idƒd}|iƒ}n|idƒd}d}|iƒ|ii|||||ƒq)W|i
d|_
dS(s%Parses an attribute list declaration.iRNtNOTATIONt|t(iäißNs"Rls#DEFAULTs#IMPLIEDs	#REQUIREDs#FIXEDiE(RR/R%telemRtattrR0t
reg_attr_typeR3ta_typeRt_DTDParser__parse_listtreg_nameRtreg_nmtokenttokensttokenthas_keyR!Rta_declRbta_defR	R<t
new_attribute(RR…R„R‹R‡RŒRRŽ((RRSÊsZ






 




!cCsÕ|idƒ|iƒ}|idƒ|idƒo
d}nQ|idƒo
d}n7|idƒo|iƒ}n|idd
ƒd}|iƒ|idƒp|iddƒn|ii	||ƒd	S(s#Parses an element type declaration.itEMPTYtANYRƒi¼s
EMPTY, ANYRNi½N(s
EMPTY, ANYRƒ(
RR/R%t	elem_nameRt	elem_contt_parse_content_modelR!R<tnew_element_type(RR“R”((RRQs 




cCs,|iƒg}d}|idƒo|djo|iƒSnx|iƒ|idƒo|idƒ}n
|i	ƒ}|i
dƒp |i
dƒp|i
dƒo$|i|i}|id|_nd}t|ƒtjo|i||fƒn|i|ƒ|iƒ|id	ƒoPn|djoX|i
d
ƒp|i
dƒo|i|i}n|iddƒ|id|_qD|i|ƒp|idƒ|id	ƒqDqDW|i
dƒp |i
dƒp|i
dƒo$|i|i}|id|_nd}|||fS(saParses the content model of an element type declaration. Level
        tells the function if we are on the top level (=0) or not (=1).
        The '(' has just been passed over, we read past the ')'. Returns
        a tuple (separator, contents, modifier), where content consists
        of (cp, modifier) tuples and cp can be a new content model tuple.R2s#PCDATAiiRƒt?Rt+t)R‚t,i¼s'|'iàN(s'|'Rš(RR/t	cont_listtsepRtleveltparse_mixed_content_modelR•tcpR%RRRtmodttypetStringTypestappendR!R(RRRœRŸR›R ((RR•sF

0


 
0cCsd
g}d}d}x£y|iƒWntj
o}|‚nX|idƒo
d}n3|idƒoPn|iddƒ|i	dƒ|iƒ|i
|itƒdfƒqW|idƒo
d}n"|djo|iddƒn|||fS(s9Parses mixed content models. Ie: ones containing #PCDATA.s#PCDATAR2iR‚R™i½RNRN(s#PCDATAR2(
R›RœR RR/RRZRR!RR£R3R‰(RRZRœR›R ((RRžTs.	


!

cCs|io|idƒ|idƒní|iƒ|idƒoId|_|iƒ|idƒp|iddƒn|iƒdSn|idƒp1|id	dƒ|idƒ|id|_n|iƒ|idƒp|iddƒn|iƒ|id|_dS(sParses a conditional section.iás]]>tIGNOREit[i½NtINCLUDEi¼s'IGNORE'(s'IGNORE'R¦(	RR$R!RR/RR=RPR>(R((RRYss*


	




cCsËya|i}xQ|oI|itƒ|idƒo|d}q|d}|id|_qWWnZtj
oN}|i	o|i
dƒn||_d|_d|_d|_|‚nXd|_dS(Ns]]>iiiãR2i(
RR=tcounterRt
reg_cond_sectRRRRZR
R!RR(RR§RZ((RRP’s$	


				cCsªg}|iƒ|idƒp|iddƒnxo|iƒ|i|i|ƒƒ|iƒ|idƒoPq7|i|ƒp|idd|fƒPq7q7W|S(sBParses a '(' S? elem_regexp S? separator ... ')' list. (Internal.)Rƒi½iR™i¼s')'N(	tlistRR/RR!R£R3telem_regexpt	separator(RRªR«R©((Rt__parse_list©s 



cCs|iS(N(RR$(R((Rtis_external½sR	cCs0ti||ƒ|ii|iƒd|_dS(Ni(R8t_push_ent_stackRR&R?R£R>(RR&((RR®ÂscCs+ti|ƒ|id|_|id=dS(Niÿÿÿÿ(R8t_pop_ent_stackRR?R>(R((RR¯Çs
($t__name__t
__module__t__doc__RRRRRRR/R0R3R9R@RDRFRGRHRJRMR[RRRbRnRTRVRSRQR•RžRYRPRˆR­R®R¯(((RRsD	
		
	!											2	<		<	
		8	9					R;cBs5tZd„Zd„Zd„Zd„Zd„ZRS(NcCs&ti|dƒh|_h|_dS(N(tDTDConsumerR9RR	t
param_entstused_notations(R((RR9Ðs	cCs1|ii|ƒpt||ƒ|i|<ndS(N(RR´RR&tInternalEntityRp(RR&Rp((RRgÕscCs7|ii|ƒp t|||dƒ|i|<ndS(NR2(RR´RR&tExternalEntityRyRz(RR&RyRz((RRhÙscCs|i|S(N(RR´R&(RR&((RR(ÝscCs
h|_dS(N(RR´(R((RR@às(R°R±R9RgRhR(R@(((RR;Îs
				(
R²tstringtfindRtxmlutilstxmldtdtXMLCommonParserRR³R;(R¸RRR;((RR—s		ÿÿ½

Anon7 - 2021