找回密码
 注册
查看: 727|回复: 0

R语言 XML包 parseXMLAndAdd()函数中文帮助文档(中英文对照)

[复制链接]
发表于 2012-10-1 23:57:30 | 显示全部楼层 |阅读模式
parseXMLAndAdd(XML)
parseXMLAndAdd()所属R语言包:XML

                                        Parse XML content and add it to a node
                                         解析XML的内容,并把它添加到一个节点

                                         译者:生物统计家园网 机器人LoveR

描述----------Description----------

This function parses the given XML content as a string by putting it inside a top-level node and then returns the document or adds the children to the specified parent. The motivation for this function is when we can use string manipulation to efficiently create the  XML content by using vectorized operations in R, but then converting that content into parsed nodes.
此函数解析XML内容作为一个字符串,把它里面的顶级节点,然后将该文档的孩子或添加到指定的父。此功能的动机时,我们可以使用字符串操作,有效地创建XML的内容,通过使用矢量化操作在R,但随后的内容转换成解析节点。

Generating XML/HTML content by glueing strings together is a poor approach. It is often convenient, but rarely good general software design. It makes for bad software that is not very extensible and difficult to maintain and enhance. Structure that it is programmatically accessible is much better. The tree approach provides this structure. Using strings is convenient and somewhat appropriate when done atomically for large amounts of highly regular content. But then the results should be converted to the structured tree so that they can be modified and extended. This function facilitates using strings and returning structured content.
生成XML / HTML内容通过粘合串在了一起,是一个贫穷的方法。这是很方便,但很少良好的通用软件设计。这使得糟糕的软件,是不是很可扩展性和难以维护和加强。结构,它是编程方式访问要好得多。树的方法提供了这种结构。使用字符串方便,有些适当的时候自动完成的,大量的非常规则的内容。但后来的结果应转化为结构树,使他们能够进行修改和扩展。此功能便于使用的字符串并返回结构化的内容。


用法----------Usage----------


parseXMLAndAdd(txt, parent = NULL, top = "tmp", nsDefs = character())



参数----------Arguments----------

参数:txt
the XML content to parse
XML的内容解析


参数:parent
an XMLInternalNode to which the top-level nodes in txt will be added as children
的XMLInternalNode的顶级节点在txt将增加一条,作为儿童


参数:top
the name for the top-level node. If parent is specified, this is used but irrelevant.
顶级节点的名称。如果parent指定,这是无关紧要的。


参数:nsDefs
a character vector of name = value pairs giving namespace definitions to be added to the top node.
为命名空间定义添加到的顶级节点的名称=值对字符向量。


值----------Value----------

If parent is NULL, the root node of the parsed document is returned.  This will be an element whose name is given by top unless the XML content in txt is AsIs or code is empty.
如果parentNULL,解析后的文档的根节点返回。这将是一个元素,它的名字是由top除非txt中的XML内容是ASIS或code是空的。

If parent is non-NULL, .
非parent如果是NULL“。


(作者)----------Author(s)----------



Duncan Temple Lang




参见----------See Also----------

newXMLNode xmlParse   addChildren  
newXMLNodexmlParseaddChildren


实例----------Examples----------


  long = runif(10000, -122, -80)
  lat = runif(10000, 25, 48)

  txt = sprintf("<Placemark><Point><coordinates>%.3f,%.3f,0</coordinates></Point></Placemark>",
                  long, lat)
  f = newXMLNode("Folder")
  parseXMLAndAdd(txt, f)
  xmlSize(f)


## Not run: [#不运行:]
      # this version is much slower as i) we don't vectorize the[这个版本,因为我是慢得多),我们不向量化]
      #  creation of the XML nodes, and ii) the parsing of the XML[创建的XML节点,和ii)解析XML]
      # as a string is very fast as it is done in C.[作为一个字符串是非常快的,因为它是在C.]
  f = newXMLNode("Folder")
  mapply(function(a, b) {
           newXMLNode("Placemark",
                       newXMLNode("Point",
                                   newXMLNode("coordinates",
                                               paste(a, b, "0", collapse = ","))),
                       parent = f)
           },
         long, lat)
  xmlSize(f)


  o = c("<x>dog</x>", "<omg:x>cat</omg:x>")
  node = parseXMLAndAdd(o, nsDefs  = c("http://cran.r-project.org",
                                       omg = "http://www.omegahat.org"))
  xmlNamespace(node[[1]])
  xmlNamespace(node[[2]])

  tt = newXMLNode("myTop")
  node = parseXMLAndAdd(o, tt, nsDefs  = c("http://cran.r-project.org",
                                           omg = "http://www.omegahat.org"))
  tt

## End(Not run)[#(不执行)]



转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。


注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-24 14:24 , Processed in 0.023257 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表