语法树,一个小把戏

前几天跟Padrick说起句法问题,然后我很无聊的为博客和论坛添加了按语法树输入文本的支持,一方面温习一下句法结构,同时也熟悉一下HTML5的canvas。

现在,我在写博客或你在论坛发帖时,假如碰到容易产生歧义的句子,便可以按通行的方法对句子的语法结构进行标注,凡经过标注的句子,读者可以调看直观的语法树图形,具体用法如下:

1)需要标注的句子首先用:{.*SNL/<sentence>/*.}括起来;

2)语法树的每个节点这样标注:[XX:<content>],其中XX是节点类型,命名采用语言学中的通行方式,常见的有下列几种:

  • S: 句子(sentence),假如有子句,可在S后面加数字以示区别;
  • N: 名词(noun)
  • V: 谓词(verb)
  • A: 形容词(adjective)
  • Adv: 副词(adverb)
  • P: 介词(preposition)
  • Con: 连接词(conjunction)
  • NP: 名词短语(noun phrase)
  • VP: 谓词短语(verb phrase)
  • AP: 形容词短语(adjective phrase)
  • AdvP: 副词短语(adverb phrase)
  • PP: 介词短语(preposition phrase)

3)分叉:因为我实现的功能只是树形数据结构的处理和图形化显示,所以并不涉及语言学知识,不过我觉得按Noam Chomskyphrase structure grammar,好像树的所有分支都应该是二叉的,只有一个例外(对此我不甚确定),就是包含了连接词(Con)子节点的分支,可以是多叉的。

4)移位、复用和踪迹:

4.1)移位:被移位的元素(比如英语疑问句中的前置代词)将成为孤立节点,其“XX”用“#n”标记,n是序数,用于与其它移位元素区分,在图形中,移位节点将以棕色显示;

4.2)复用:在句子其他位置将被其他隐含引用的节点,其“XX”后面加上“(n)”标记,n是序数;

4.3)踪迹:隐含引用了被移位的节点或其他可复用节点的地方,引用处以“(Tn)”标记,n是序数,且与(4.1)和(4.2)中的n相对应;

5)文本显示:在博客文章和论坛帖子中,被标记过的文本将被标上虚线下划线,其右侧将出现一个 图标;

6)图形显示:点击上述图标将弹出语法树窗口,该窗口不仅用于显示,也可在文本框内对文本进行标记,然后点击“解析”查看相应图形;提示:由于弹出窗口经常会被浏览器拦截,故在首次打开时,你需要手工撤销拦截(最好指示它以后不拦截headsalon.org的弹出窗口);

7)示例:我在这篇文章的倒数第二节提供了一个实例,我把它复制在这儿:

这个是原始文本:

不过这里仍需指出一条界线,{.*SNL/[S:[NP:[AP:可以被谴责的][N:行为]][VP:[Adv:未必][VP:[V:是][AP:[AP(1):[A:有罪的][Con:或者][AP:[VP:[V:构成][NP:(T2)]][Sfx:了][#2:[A:对既有权利的][N:侵犯]]]][Con:,][AP:[VP:[PP:[AP:(T1)][P:因而]][VP:[V:需要][NP:[N:加以司法矫正][Con:或][N:施以惩罚]]]][Sfx:的]]]]]]/*.}。

这是被解析后的文本:

不过这里仍需指出一条界线,可以被谴责的行为未必是有罪的或者构成了对既有权利的侵犯,因而需要加以司法矫正或施以惩罚的

 

相关文章

标签: |
3317
前几天跟Padrick说起句法问题,然后我很无聊的为博客和论坛添加了按语法树输入文本的支持,一方面温习一下句法结构,同时也熟悉一下HTML5的canvas。 现在,我在写博客或你在论坛发帖时,假如碰到容易产生歧义的句子,便可以按通行的方法对句子的语法结构进行标注,凡经过标注的句子,读者可以调看直观的语法树图形,具体用法如下: 1)需要标注的句子首先用:{.*SNL/<sentence>/*.}括起来; 2)语法树的每个节点这样标注:[XX:<content>],其中XX是节点类型,命名采用语言学中的通行方式,常见的有下列几种:
  • S: 句子(sentence),假如有子句,可在S后面加数字以示区别;
  • N: 名词(noun)
  • V: 谓词(verb)
  • A: 形容词(adjective)
  • Adv: 副词(adverb)
  • P: 介词(preposition)
  • Con: 连接词(conjunction)
  • NP: 名词短语(noun phrase)
  • VP: 谓词短语(verb phrase)
  • AP: 形容词短语(adjective phrase)
  • AdvP: 副词短语(adverb phrase)
  • PP: 介词短语(preposition phrase)
3)分叉:因为我实现的功能只是树形数据结构的处理和图形化显示,所以并不涉及语言学知识,不过我觉得按[[Noam Chomsky]]的[[phrase structure grammar]],好像树的所有分支都应该是二叉的,只有一个例外(对此我不甚确定),就是包含了连接词(Con)子节点的分支,可以是多叉的。 4)移位、复用和踪迹: 4.1)移位:被移位的元素(比如英语疑问句中的前置代词)将成为孤立节点,其“XX”用“#n”标记,n是序数,用于与其它移位元素区分,在图形中,移位节点将以棕色显示; 4.2)复用:在句子其他位置将被其他隐含引用的节点,其“XX”后面加上“(n)”标记,n是序数; 4.3)踪迹:隐含引用了被移位的节点或其他可复用节点的地方,引用处以“(Tn)”标记,n是序数,且与(4.1)和(4.2)中的n相对应; 5)文本显示:在博客文章和论坛帖子中,被标记过的文本将被标上虚线下划线,其右侧将出现一个 图标; 6)图形显示:点击上述图标将弹出语法树窗口,该窗口不仅用于显示,也可在文本框内对文本进行标记,然后点击“解析”查看相应图形;提示:由于弹出窗口经常会被浏览器拦截,故在首次打开时,你需要手工撤销拦截(最好指示它以后不拦截headsalon.org的弹出窗口); 7)示例:我在这篇文章的倒数第二节提供了一个实例,我把它复制在这儿: 这个是原始文本:
不过这里仍需指出一条界线,{.*SNL/[S:[NP:[AP:可以被谴责的][N:行为]][VP:[Adv:未必][VP:[V:是][AP:[AP(1):[A:有罪的][Con:或者][AP:[VP:[V:构成][NP:(T2)]][Sfx:了][#2:[A:对既有权利的][N:侵犯]]]][Con:,][AP:[VP:[PP:[AP:(T1)][P:因而]][VP:[V:需要][NP:[N:加以司法矫正][Con:或][N:施以惩罚]]]][Sfx:的]]]]]]/*.}。
这是被解析后的文本:
不过这里仍需指出一条界线,{*SNL/[S:[NP:[AP:可以被谴责的][N:行为]][VP:[Adv:未必][VP:[V:是][AP:[AP(1):[A:有罪的][Con:或者][AP:[VP:[V:构成][NP:(T2)]][Sfx:了][#2:[A:对既有权利的][N:侵犯]]]][Con:,][AP:[VP:[PP:[AP:(T1)][P:因而]][VP:[V:需要][NP:[N:加以司法矫正][Con:或][N:施以惩罚]]]][Sfx:的]]]]]]/*}。
 


已有24条评论

  1. zhang3 @ 2012-02-11, 20:02

    建议,能不能简化一下。让作者不要考虑词性问题,直接用给句子分节就好了,而且,解析之后的效果,改成从外到内,背景色依次变深。

    [回复]

    辉格 回复:

    同时支持两种情况会让程序复杂一些,有空再弄

    [回复]

  2. padrick @ 2012-02-12, 21:02

    {*SNL/[S:[N:文化][VP:[V:是][NP:[AP:最不需要扶持的][N:产业]]]]/*}

    [回复]

    辉格 回复:

    更细的版本:{*SNL/[S:[N:文化][VP:[V:是][NP:[AP:[Adv:最][AP:[VP:[VP:[Adv:不][V:需要]][N:扶持]][Sfx:的]]][N:产业]]]]/*}

    [回复]

    辉格 回复:

    我把“的”理解为一个变性后缀,它把VP变成了AP

    [回复]

  3. padrick @ 2012-02-12, 21:07

    咦,哪里出了问题?

    [回复]

    辉格 回复:

    我这儿没问题啊,我看到你输入的句子了,显示正常,你是啥情况?刷新一下试试?

    [回复]

    padrick 回复:

    主贴中能看到树图,也有小图标出现,回复中看不到,包括你的更细的版本

    [回复]

    辉格 回复:

    哦?你用的什么浏览器?我试了Chrome和Firefox都没问题,IE不行(但能看到图标)

    [回复]

  4. bear @ 2012-02-15, 17:23

    最近苹果的ipad把商标问题搞得很热,辉总有饭文的打算么?

    [回复]

    辉格 回复:

    我最近只顾着玩自己的了,没看新闻,苹果干啥了?

    [回复]

    bear 回复:

    深圳唯冠向苹果索赔100亿 – http://news.163.com/12/0215/16/7QAMMO2300014JB5.html

    [回复]

    padrick 回复:

    握爪。。

    [回复]

  5. bear @ 2012-02-15, 19:42

    深圳唯冠向苹果索赔100亿 – http://news.163.com/12/0215/16/7QAMMO2300014JB5.html

    [回复]

    辉格 回复:

    哦,我看了一下,感觉这事儿恐怕是苹果法律顾问有疏忽,交易没做干净,当时香港唯冠已濒临破产,因此可能已丧失对其资产的处置权,不过这一点需要了解交易的具体时间才能确定。

    [回复]

    辉格 回复:

    因为香港唯冠不直接拥有大陆的iPad商标权,因而苹果从他那里买到的其实是个许诺,而这个许诺由于后来破产清算程序启动而无法兑现,这种情况苹果好像只能自认倒霉

    [回复]

    bear 回复:

    这个问题,我比较感兴趣的是商标的产权理论。比较常见问题是商标抢注,但这个行为既违反先导先得原则又违反有效占有原则,所以结论很清楚。然而,这次唯冠并不是抢注,而是在很早之前就注册了ipad,差不多10年之后苹果才作响了这个品牌。现在,苹果是ipad的实际占有者,消费者完全认同苹果对品牌的所有权,而唯冠只是法律上的所有者。仅从理论考虑,个人认为应该把ipad判给苹果。如果是这样的话,商标法也和专利法一样,在某种程度上妨碍创新,制造无效率了?

    [回复]

    辉格 回复:

    其实唯冠也是真正出过IPAD产品的,不仅仅是注册而已。
    另外,我对商标权的支持远高于对专利权,商标鼓励建立和维护商誉,它在激励机制上是一致的,即成本/收益对称,你注册一个商标不大会妨碍别人的创新(因而没有转嫁成本),除非你大面积注册而不实际使用,所以只要遵循实际使用原则就不会有多少负面效果,而专利则不同,到处埋地雷且成本很低。

    [回复]

    bear 回复:

    我也见过这款产品,但绝大多数人都没有听说过这款产品,可以说唯冠并没有建立IPAD这个“品牌”,只是注册了这个品牌而已。
    商标/品牌的作用是区别同类产品。当企业/个人以某种方式建立了某个品牌,并拥有广泛认知度之后,却被人用商标法敲诈,我认为是法律妨碍经济的典型。
    要我设计的话,商标的法律权益该有一个不算太长的期限。到期后就要重新公示审核,如果该商标已经在全球成为另一个产品公认的标识,那该商标将归新的企业。这样既能解决商标抢注的问题,也能解决唯冠这种遗留问题。

    [回复]

    辉格 回复:

    我觉得你担忧的情况现有规范已经能避免了,长期搁置不用的商标权是会被否决的,至少我的观感好像是这样,本案似乎不存在这个问题,苹果主动去找唯冠买商标就表明他也承认这个商标权,争议只在于交易的有效性。

    [回复]

  6. bear @ 2012-02-15, 19:45

    Btw, 有没有人报告过评论有bug?今天我碰到两次,点击发表评论后弹出一个alert提示失败,但评论其实已经加上了,刷新一下就有了。

    [回复]

    辉格 回复:

    是哦,我最近都在论坛里回复,一直没发现这个bug,好像是wordpress升级升出了毛病

    [回复]

  7. 硝化纤维素 @ 2014-12-26, 21:28

    好文章,内容文笔极佳.

    [回复]

  8. abc @ 2019-02-04, 15:04

    在哪发表文章啊?没找到

    [回复]

发表评论