³ò
4ÒÇIc           @   s^   d  d k  l Z d  d k Td  d k Td  d k Td e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   iÿÿÿÿ(   t   DependencyGraph(   t   *t   DependencyCorpusReaderc           B   st   e  Z e e ƒ  e d  d e ƒe d „ Z e d „ Z e d „ Z	 e d „ Z
 e d „ Z e d „ Z e d „ Z RS(	   s   
t   gapsc         C   s   t  i |  | | | ƒ d  S(   N(   t   CorpusReadert   __init__(   t   selft   roott   fileidst   encodingt   word_tokenizert   sent_tokenizert   para_block_reader(    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyR      s    c         C   s:   t  g  } |  i | ƒ D] } | t | ƒ i ƒ  q ~ ƒ S(   sW   
        @return: the given file(s) as a single string.
        @rtype: C{str}
        (   t   concatt   abspathst   opent   read(   R   R   t   _[1]t   fileid(    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   raw   s    
c      	   C   s=   t  g  } |  i | ƒ D] } | t | t t t ƒ q ~ ƒ S(   N(   R   R   t   DependencyCorpusViewt   False(   R   R   R   R   (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   words#   s    
c      	   C   s=   t  g  } |  i | ƒ D] } | t | t t t ƒ q ~ ƒ S(   N(   R   R   R   t   TrueR   (   R   R   R   R   (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   tagged_words'   s    
c      	   C   s=   t  g  } |  i | ƒ D] } | t | t t t ƒ q ~ ƒ S(   N(   R   R   R   R   R   (   R   R   R   R   (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   sents+   s    
c      	   C   s=   t  g  } |  i | ƒ D] } | t | t t t ƒ q ~ ƒ S(   N(   R   R   R   R   R   (   R   R   R   R   (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   tagged_sents/   s    
c      	   C   sd   t  g  } |  i | ƒ D] } | t | t t t ƒ q ~ ƒ } g  } | D] } | t | ƒ qJ ~ S(   N(   R   R   R   R   R   R    (   R   R   R   R   R   t   _[2]t   sent(    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt   parsed_sents3   s    
5(   t   __name__t
   __module__t   Nonet   TabTokenizert   RegexpTokenizerR   t   read_blankline_blockR   R   R   R   R   R   R   (    (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyR      s   R   c           B   s#   e  Z d  Z e d „ Z d „  Z RS(   s   -DOCSTART- -DOCSTART- O
c         C   s8   | |  _  | |  _ | |  _ | |  _ t i |  | ƒ d  S(   N(   t   _taggedt   _dependenciest   _group_by_sentt   _chunk_typest   StreamBackedCorpusViewR   (   R   t   corpus_filet   taggedt   group_by_sentt   dependenciest   chunk_types(    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyR   <   s
    				c      	   C   s–  t  | ƒ d i ƒ  } | i |  i ƒ o | t |  i ƒ i ƒ  } n |  i p#g  } | i d ƒ D] } | | i d ƒ qd ~ } t | d ƒ d j p t | d ƒ d j o3 g  } | D] } | | d | d f q¼ ~ } nW t | d ƒ d j o3 g  } | D] } | | d | d f q~ } n t d ƒ ‚ |  i	 p+ g  } | D] \ }	 }
 | |	 qO~ } qsn |  i
 o | g Sn t | ƒ Sd  S(	   Ni    s   
s   	i   i   i   i
   s3   Unexpected number of fields in dependency tree file(   R#   t   stript
   startswitht	   _DOCSTARTt   lent   lstripR%   t   splitt
   ValueErrorR$   R&   t   list(   R   t   streamR   R   t   linet   linesR   t   _[3]t   _[4]t   wordt   tag(    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyt
   read_blockD   s    
3.33
/
(   R   R   R0   R    R   R=   (    (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pyR   9   s   N(	   t
   nltk.parseR    t   nltk.tokenizet   utilt   apit   SyntaxCorpusReaderR   R(   R   (    (    (    s3   /p/zhu/06/nlp/nltk/nltk/corpus/reader/dependency.pys   <module>
   s
   


)