m๒
ULc @ sว d Z d Z d Z d Z d k l Z d k Td k Td k l Z d k
Z
d e e f d YZ d
e e f d YZ d e
f d
YZ d e e f d YZ d e e f d YZ d S( s $Id$sO Sam Ruby and Mark Pilgrim s
$Revision$s, Copyright (c) 2002 Sam Ruby and Mark Pilgrim( s
validatorBase( t *( s extension_everywhereNt opmlc B s; t Z d d d g Z d Z d Z d Z d Z RS( Ns 1.0s 1.1s 2.0c C sG | i t d | i i j o] | i d
t i j oB | i t h d | i
i <d | i <d | i d < qห nL | i d j o; | i t h d | i
i <d | i <d d < n d | i
j o, | i t h d | i <d d < n d | i
j o, | i t h d | i <d d < n d S( Nt versiont parentt elementt valuet outlineDocumentt attrt headt body( Ns version( Ns version( Ns version( t selft setFeedTypet TYPE_OPMLt Nonet attrst getNamesR t versionListt logt InvalidOPMLVersionR t namet MissingAttributet childrent MissingElement( R
( ( t= /web/script/rubys/feedvalidator.org/src/feedvalidator/opml.pyt validate s
F;,c C s d g S( Nu version( Nu version( R
( R
( ( R t getExpectedAttrNames" s c C s t S( N( t opmlHead( R
( ( R t do_head% s c C s t S( N( t opmlBody( R
( ( R t do_body( s ( t __name__t
__module__R R R R R ( ( ( R R s
R c B st t Z d Z d Z d Z d Z d Z d Z d Z d Z d Z
d
Z d Z d Z
RS(
Nc C s t t f S( N( t safeHtmlt noduplicates( R
( ( R t do_title, s c C s t t f S( N( t rfc822R! ( R
( ( R t do_dateCreated/ s c C s t t f S( N( R# R! ( R
( ( R t do_dateModified2 s c C s t t f S( N( R R! ( R
( ( R t do_ownerName5 s c C s t t f S( N( t emailR! ( R
( ( R t
do_ownerEmail8 s c C s t t f S( N( t httpURLR! ( R
( ( R t
do_ownerId; s c C s t t f S( N( t commaSeparatedLinesR! ( R
( ( R t do_expansionState> s c C s t t t f S( N( t positiveIntegert nonblankR! ( R
( ( R t do_vertScrollStateA s c C s t t t f S( N( R- R. R! ( R
( ( R t do_windowTopD s c C s t t t f S( N( R- R. R! ( R
( ( R t
do_windowLeftG s c C s t t t f S( N( R- R. R! ( R
( ( R t do_windowBottomJ s c C s t t t f S( N( R- R. R! ( R
( ( R t do_windowRightM s ( R R R" R$ R% R&