如果将娃哈哈总经理宗馥莉的辞职信做成结构化文档会是怎样的?

今日,一封辞职信引发广泛关注。网上流传的致全体员工函件如下图所示:

840330eb24de4ab2acd62c26643f8519.png

大龙突发奇想,如果将这封信做成结构化文档,它会是怎样的呢?

来,说干就干。 

将文档/辞职信进行结构化,一般分为这么几步:

  1. 定义文档类型

    • 定义写一封辞职信应该遵循什么规则,并且将这些规则数字化,让软件能够按照规则检查文档

  2. 编写文档内容

    • 这一步就是编写辞职信的内容

  3. 制定输出样式

    • 结构化文档的内容和样式分离的,我们需要编制文档输出的样式模板,用于将内容展现

- 1 -

定义文档类型

我们写任何文档都有一定的规则,有些成文,有些不成文只是惯例。

对于辞职信,规则大体是这样的:

  1. 必须有一个标题

  2. 可以有或者没有副标题

  3. 必须要有且只有一个称谓

  4. 内容部分有1到n个段落

  5. 必须要有辞职人

  6. 必须要有辞职日期

不管成不成文,如果只是用文字将这些规则写出来,那么规则很难得到落实。 

原因包括但不限于这些:

  • 每个人对文字形式的规则理解不一样

  • 每个人可能按照自己的风格来写

  • 没有人检查,就算有人检查可能会遗漏

所以写出来的辞职信千奇百怪,各有各的风格。对于做艺术的,有个性是好的。但是对于一个企业的文档,则要按照统一的规则。 

计算机特别擅长按照给定的规则来检查文档。在结构化文档中,我们将这些规则做成计算机能够理解的规则,计算机就会不打折扣地检查和确保文档符合这些规则,最终得到风格一致的文档。 

上边的规则写成计算机能读懂的规则就是下边这样,感兴趣的读者可以看看。它也被称为Document Type Definision,简称DTD。

<?xml version="1.0" encoding="UTF-8" ?>

<!ELEMENT resign_letter (title, subtitle?, body, resignator, resign_date)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT subtitle  (#PCDATA)>
<!ELEMENT body  (greeting, para+)>
<!ELEMENT greeting  (#PCDATA)>
<!ELEMENT para  (#PCDATA)>
<!ELEMENT resignator  (#PCDATA)>
<!ELEMENT resign_date  (#PCDATA)>

- 2 -

编写辞职信的内容

有了辞职信的规则,我们来编写辞职信的内容。

结构化文档大多数情况是使用一种叫XML的格式来编写。这种格式有点类似于我们每天在手机上看新闻用到的网页格式。事实上,你现在正在看的这篇文章也是网页格式的。 

结构化文档的特点是内容和样式分离。 编写内容的时候只关心内容本身,不关心输出的样子。事实上输出的样子是第三步关心的事情。 

用结构化工具编写的辞职信最终是这样(大部分时候,咱们不用这样看这个内容,而是用一个更友好的界面查看):

6656bcd2561a44ea88421b943c30ef52.png

- 3 -

制定输出样式模板

一般情况下,读者不希望看到第二步看到的像代码一样的内容。

事实上,上边的内容也不是直接给读者看的。它需要经过与样式模板结合才能呈现出最终的样子。 

例如,我们要将辞职信在网页上显示,我们可以制定一个这个内容在网页上显示的样式文件,我们把它叫做HTML样式。它来决定文字大小、对齐方式、文字颜色、上边距下边距等。 

将内容和HTML样式结合,就能得到如下图所示的输出。 

f4a116e1c2d340a89aa4ab975add62da.png

- 4 -

总结

为啥要将文档进行结构化?

这是前人总结的原因:

01ef9dc2d84043df81ba55867c43c2bf.png

今天这篇文章是为了好玩,让大家了解一下自定义文档类型的过程。 

c7e85b1d691044fe92288c4f7ff4ab9d.png

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值