hi,

    各位, 最近在一个项目中需要解析xml, 想用SAX模式来处理, 但因为对XML处理的经验不多, 中间有几个问题不太清楚, 望大家帮解惑.

1. google以后, 发现可以用XML::SAX::ParserFactory解析, 用XML::SAX::Base来生成filter,
来处理. 但因为SAX是基于事件的, 我要载取中间一段element, 有什么 tip? 比如下面一段,
我想从原始xml中截到<body>之内的所有内容, how to ?
    <?xml version="1.0"?>
      <msg>
        <to>cl123</to>
        <type>event</type>
        <body>
          <info x="11111">some info</info>
          <other>info</other>
          <add>
            <foo x="sss"/>
          </add>
        </body>
      </msg>

2. 如果我的type有许多种的话, 是不是需要在filter判断每个start_element中的element的Name值,
来判断?如果有多层嵌套, 那是不是需要有附加的数据结果来处理, 比如数据的push and pop, 来跟踪现在是在哪个element中?

3. validate
    对于schema的验证, 有没有与sax适用的方法/模块推荐?


Thanks!

-- 
Best regards.
Felix New

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛“PerlChina Mongers 讨论组”论坛。
 要在此论坛发帖,请发电子邮件到 [email protected]
 要退订此论坛,请发邮件至 [email protected]
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---

回复