技术写作一般只接触过swagger或者DOxygen这样面向开发人员的文档,面向最终客户的文档,就没有太好用的工具或者很好的解决方案。
一般也就是一些手册,联机帮助,chm,guided tour,这些文档以常见的pdf、word、html来发布,中间还会有评审和翻译的需求,就没了很简单的感觉,但是这些工具功能齐全的价格昂贵,简单的还没有idea这种编码工具用法简单。也不排除我水平不够的原因。
1.技术信息开发技术基础
XML是重要的数据存储方式,
作为技术写作从业人员,需要了解XML的基本技术,具体如下:
- XML
- CSS/XSLT
- DTD/Schema
创建XML
<BusinessCard>
<Name>Gao Zhijun</Name>
<phone type="mobile">+86 10 8264 9812</phone>
<phone type="work">+86 10 6127 3510</phone>
<phone type="fax">+86 10 6127 3510</phone>
<email>gaozhijun@ss.pku.edu.cn</email>
</BusinessCard>
创建CSS(层叠样式表Cascading Style Sheets,用来表现HTML或这XML等文件的样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化)
BusinessCard {
font-family: Arial, Helvetica, sans-serif;
background-color: #DACFE5;
width: 300px;
display: block;
padding: 10pt;
border: 1px solid #0D3427;
margin: 5px;
text-align: left;
}
Name {
color: #0D3427;
font-weight: bold;
font-size: 140%;
display: block;
margin-bottom: 3%;
}
phone {
font-size: 90%;
color: #523819;
font-size: 90%;
display: block;
}
email {
color: #0D3427;
font-size: 90%;
font-weight: bold;
display: block;
margin-top: 3%;
}
关联CSS至XML
在XML文档中,问号(?)的作用是用来声明XML文档的版本和编码方式。这个问号通常被称为"XML声明",它位于XML文档的开头,并且是可选的。
例如,是一个常见的XML声明,它指定了XML文档的版本为1.0,并且使用UTF-8编码方式。
在给定的例子中,是一个XML样式表声明,它指定了应该使用名为"businesscard.css"的CSS样式表来渲染这个XML文档。
<?xml-stylesheet type="text/css" href="businesscard.css"?>
### 创建页面内DTD
DTD是文档类型定义的一套关于标记符的语法规则,用于进行程序间的数据交换。
文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。
DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。
内部的 DOCTYPE 声明
假如 DTD 被包含在您的 XML 源文件中,它应当通过下面的语法包装在一个 DOCTYPE 声明中:
带有 DTD 的 XML 文档实例(请在 IE5 以及更高的版本打开,并选择查看源代码):
<?xml version="1.0"?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend</body>
</note>
上面的 DTD 解释如下:
- !DOCTYPE note (第二行)定义此文档是 note 类型的文档。
- !ELstrongENT note (第三行)定义 note 元素有四个元素:"to、from、heading,、body"
- !ELstrongENT to (第四行)定义 to 元素为 "#PCDATA" 类型
- !ELstrongENT from (第五行)定义 frome 元素为 "#PCDATA" 类型
- !ELstrongENT heading (第六行)定义 heading 元素为 "#PCDATA" 类型
- !ELstrongENT body (第七行)定义 body 元素为 "#PCDATA" 类型
-
PCDATA (Parsed Character Data),是一种元素类型,简单解释就是元素内只有文本,没有子元素。
外部文档声明
假如 DTD 位于 XML 源文件的外部,那么它应通过下面的语法被封装在一个 DOCTYPE 定义中:
<!DOCTYPE root-element SYSTEM "filename">
这个 XML 文档和上面的 XML 文档相同,但是拥有一个外部的 DTD: (点击打开该文件,并选择"查看源代码"命令。)
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend</body>
</note>
这是包含 DTD 的 "note.dtd" 文件:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
为什么使用 DTD?
通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。
通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据。
而您的应用程序也可使用某个标准的 DTD 来验证从外部接收到的数据。
您还可以使用 DTD 来验证您自身的数据。
创建独立DTD并关联至XML
<!DOCTYPE BusinessCard SYSTEM "businesscard.dtd">