<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shadow &#38; Honnix &#187; XML</title>
	<atom:link href="http://honnix.com/blog/archives/tag/xml/feed" rel="self" type="application/rss+xml" />
	<link>http://honnix.com/blog</link>
	<description>she&#039;s growing up</description>
	<lastBuildDate>Sun, 15 Jan 2012 10:44:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>Scala的XML是只读的</title>
		<link>http://honnix.com/blog/archives/422</link>
		<comments>http://honnix.com/blog/archives/422#comments</comments>
		<pubDate>Fri, 28 Aug 2009 15:40:19 +0000</pubDate>
		<dc:creator>honnix</dc:creator>
				<category><![CDATA[Scala]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[BasicTransformer]]></category>
		<category><![CDATA[immutable]]></category>
		<category><![CDATA[RuleTransformer]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://honnix.com/blog/?p=422</guid>
		<description><![CDATA[有什么好处呢？最直接的好处就是同一个node可以被多个xml共享，想想DOM是怎么处理这个的。 问题是一个简单的修改就需要重新建立一个完整的xml。Scala提供了BasictTransformer和RuleTransformer，再加上无敌的case匹配，可以方便地处理某类节点。 有个麻烦地地方，Scala-2.7.5的BasicTransformer有bug，只能用nightly或者等2.8发布了。]]></description>
			<content:encoded><![CDATA[<p>有什么好处呢？最直接的好处就是同一个node可以被多个xml共享，想想DOM是怎么处理这个的。</p>
<p>问题是一个简单的修改就需要重新建立一个完整的xml。Scala提供了BasictTransformer和RuleTransformer，再加上无敌的case匹配，可以方便地处理某类节点。</p>
<p>有个麻烦地地方，Scala-2.7.5的BasicTransformer有bug，只能用nightly或者等2.8发布了。</p>
]]></content:encoded>
			<wfw:commentRss>http://honnix.com/blog/archives/422/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scala确实非常适合实现DSL</title>
		<link>http://honnix.com/blog/archives/420</link>
		<comments>http://honnix.com/blog/archives/420#comments</comments>
		<pubDate>Sat, 22 Aug 2009 14:17:41 +0000</pubDate>
		<dc:creator>honnix</dc:creator>
				<category><![CDATA[Scala]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[dom4j]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[xpath]]></category>

		<guid isPermaLink="false">http://honnix.com/blog/?p=420</guid>
		<description><![CDATA[用了一上午的时间，就实现了xpath的解释，类似这样的东西：a[@b=="1" and (c/@d==2 or e[f=="abc"])]。再加上Scala对函数对象的支持以及函数名的随意性，很容易就实现了对xml操作的扩展。除了Scala定义好的&#8221;\&#8221;，&#8221;\\&#8221;，加入了&#8221;\%&#8221;来支持复杂的xpath，跟dom4j差不多了。真爽！]]></description>
			<content:encoded><![CDATA[<p>用了一上午的时间，就实现了xpath的解释，类似这样的东西：a[@b=="1" and (c/@d==2 or e[f=="abc"])]。再加上Scala对函数对象的支持以及函数名的随意性，很容易就实现了对xml操作的扩展。除了Scala定义好的&#8221;\&#8221;，&#8221;\\&#8221;，加入了&#8221;\%&#8221;来支持复杂的xpath，跟dom4j差不多了。真爽！</p>
]]></content:encoded>
			<wfw:commentRss>http://honnix.com/blog/archives/420/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scala的XML处理非常强大</title>
		<link>http://honnix.com/blog/archives/418</link>
		<comments>http://honnix.com/blog/archives/418#comments</comments>
		<pubDate>Thu, 13 Aug 2009 14:12:52 +0000</pubDate>
		<dc:creator>honnix</dc:creator>
				<category><![CDATA[Scala]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XSLT]]></category>

		<guid isPermaLink="false">http://honnix.com/blog/?p=418</guid>
		<description><![CDATA[而且好用。模型非常简单，比该死的DOM好太多了。 Lexer的直接支持使得XML使用起来就像是写代码一样，这样可以直接把XSLT丢掉了。 目前还有些不是很好的地方，比如不能用变量作为tag的名字：&#60;{tag_name}&#62;，这样不行；再比如XPATH的支持还不全。不过好在可以implicit来增加新的方法，语法糖衣真是不错。]]></description>
			<content:encoded><![CDATA[<p>而且好用。模型非常简单，比该死的DOM好太多了。</p>
<p>Lexer的直接支持使得XML使用起来就像是写代码一样，这样可以直接把XSLT丢掉了。</p>
<p>目前还有些不是很好的地方，比如不能用变量作为tag的名字：&lt;{tag_name}&gt;，这样不行；再比如XPATH的支持还不全。不过好在可以implicit来增加新的方法，语法糖衣真是不错。</p>
]]></content:encoded>
			<wfw:commentRss>http://honnix.com/blog/archives/418/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

