def xml(self, fileids, key=None): return concat( [ ToolboxData(path, enc).parse(key=key) for (path, enc) in self.abspaths(fileids, True) ] )
def fields(self, fileids, strip=True, unwrap=True, encoding='utf8', errors='strict', unicode_fields=None): return concat([ list( ToolboxData(fileid, enc).fields(strip, unwrap, encoding, errors, unicode_fields)) for (fileid, enc) in self.abspaths(fileids, include_encoding=True) ])
ignored_tags = ['arg', 'dcsv', 'pt', 'vx'] validate_lexicon(grammar, lexicon, ignored_tags) # Ex11-4 为Toolbox词典分块:此块语法描述了一种中国方言的词汇条目结构 # 使用块分析器,能够识别局部结构并且报告已经确定的局部结构 grammar = r""" lexfunc: {<lf>(<lv><ln|le>*)*} example: {<rf|xv><xn|xe>*} sense: {<sn><ps><pn|gv|dv|gn|gp|dn|rn|ge|de|re>*<example>*<lexfunc>*} record: {<lx><hm><sense>+<dt>} """ from xml.etree.ElementTree import ElementTree from nltk.toolbox import ToolboxData db = ToolboxData() db.open(nltk.data.find('corpora/toolbox/iu_mien_samp.db')) # db.parse()解析不了 lexicon = db.parse(grammar, encoding='utf8') tree = ElementTree(lexicon) with open('iu_mien_samp.xml', 'wb') as output: tree.write(output) # 11.6 使用OLAC元数据描述语言资源 # NLP社区成员共同使用的具有很高精度和召回率的语言资源,已经提供的方法是元数据聚焦 # 11.6.1 什么是元数据? # “元数据”就是关于数据的结构化数据。是对象或者资源的描述信息。 # 都柏林核心数据(Dublin Core Metadata)由15个元数据元素组成,每个元素都是可选的和可重复的。 # 标题、创建者、主题、描述、发布者、参与者、日期、类型、格式、标识符、来源、语言、关系、覆盖范围和版权 # 开放档案倡议(Open Archives Initiative,OAI)提供了跨越数字化的学术资料库的共同框架,不考虑资源的类型