taken from the FDP Primer book. + Remove some contractions and s/generalised/generalized/. Submitted by: Jesus R. Camou <jcamou@cox.net> PR: www/77925
		
			
				
	
	
		
			158 lines
		
	
	
	
		
			6.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			158 lines
		
	
	
	
		
			6.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
 | 
						|
<!ENTITY base CDATA "..">
 | 
						|
<!ENTITY date "$FreeBSD: www/en/docproj/sgml.sgml,v 1.23 2004/04/01 19:32:56 linimon Exp $">
 | 
						|
<!ENTITY title "FreeBSD Documentation Project: SGML">
 | 
						|
<!ENTITY % includes SYSTEM "../includes.sgml"> %includes;
 | 
						|
]>
 | 
						|
 | 
						|
<html>
 | 
						|
    &header;
 | 
						|
 | 
						|
    <p>The Documentation Project uses SGML as the standard method
 | 
						|
      of representing the documentation.</p>
 | 
						|
 | 
						|
    <p>SGML is the <b>S</b>tandard <b>G</b>eneralized <b>M</b>arkup
 | 
						|
      <b>L</b>anguage.</p>
 | 
						|
 | 
						|
    <p>In a nutshell (and apologies to any SGML purists in the audience that
 | 
						|
      are offended) SGML is a language for writing other languages.</p>
 | 
						|
 | 
						|
    <p>You have probably already used SGML, but you did not know it. HTML, the
 | 
						|
      language that web pages are written in, has a formal description. That
 | 
						|
      description is written in SGML. When you are writing HTML you are
 | 
						|
      <b>not</b> writing SGML (per se), but you are using a language that is
 | 
						|
      defined using SGML.</p>
 | 
						|
 | 
						|
    <p>There are many, many markup languages that are defined using SGML. HTML
 | 
						|
      is one of them.  Another is called "DocBook".  This is a language designed
 | 
						|
      specifically for writing technical documentation, and as such it has many
 | 
						|
      tags (the things inside the <...>) to describe technical
 | 
						|
      documentation related things.  The FreeBSD Documentation Project adopted
 | 
						|
      it and added some new elements to make it more precise.</p>
 | 
						|
      
 | 
						|
    <p>For example, this is how you might write a brief paragraph in HTML
 | 
						|
      (do not worry about the content, just look at the tags):</p>
 | 
						|
 | 
						|
    <pre><![ CDATA [
 | 
						|
    <p>The system's passwords are stored in <tt>/etc/passwd</tt>. To edit
 | 
						|
      this file you should use <b><tt>vipw</tt></b>. However, if you just
 | 
						|
      want to add a new user you can use <b><tt>adduser</tt></b>.</p>
 | 
						|
]]></pre>
 | 
						|
    
 | 
						|
    <p>The same paragraph, marked up using DocBook, looks like</p>
 | 
						|
 | 
						|
    <pre><![ CDATA [
 | 
						|
    <para>The system's passwords are stored in
 | 
						|
      <filename>/etc/passwd</filename>. To edit this file you should use
 | 
						|
      <command>vipw</command>. However, if you just want to add a new user
 | 
						|
      you can use <command>adduser</command>.</para>
 | 
						|
]]></pre>
 | 
						|
    
 | 
						|
    <p>As you can see, DocBook is much more 'expressive' than HTML. In the HTML
 | 
						|
      example the filename is marked up as being displayed in a 'typewriter'
 | 
						|
      font. In the DocBook example the filename is marked up as being a
 | 
						|
      'filename', the presentation of the filename is not described.</p>
 | 
						|
 | 
						|
    <p>There are a number of advantages to this more expressive form of
 | 
						|
      markup:</p>
 | 
						|
 | 
						|
    <ul>
 | 
						|
      <li><p>It is not ambiguous or inconsistent.</p> <p>You do not spend time
 | 
						|
	  thinking "Hmm, I need to show a filename, should I use 'tt', or 'b',
 | 
						|
	  or 'em'?"</p> <p>Instead, you just use the right tag for the right
 | 
						|
	  job.</p>
 | 
						|
 | 
						|
	<p>The conversion process from DocBook to other formats (HTML,
 | 
						|
	  PostScript®, and so on) makes sure that all <filename>'s are
 | 
						|
	  shown the same way.</p>
 | 
						|
      </li>
 | 
						|
 | 
						|
      <li><p>You stop thinking about the presentation of your document, and
 | 
						|
	  instead concentrate on the content.</p>
 | 
						|
      </li>
 | 
						|
 | 
						|
      <li><p>Because the documentation is not tied to any particular output
 | 
						|
	  format, the same documentation can be produced in many different
 | 
						|
	  formats - plain text, HTML, PostScript, RTF, PDF and so on.</p></li>
 | 
						|
 | 
						|
      <li><p>The documentation is more 'intelligent', so more intelligent
 | 
						|
	  things can be done with it. For example, it becomes possible to
 | 
						|
	  automatically produce an index of the documentation that lists every
 | 
						|
	  command shown in the documentation.</p></li>
 | 
						|
    </ul>
 | 
						|
 | 
						|
    <p>If you are familiar with them, this is a bit like Microsoft® Word
 | 
						|
      stylesheets, only vastly more powerful.</p>
 | 
						|
 | 
						|
    <p>Of course, with this power comes a price;</p>
 | 
						|
 | 
						|
    <ul>
 | 
						|
      <li><p>Because the number of tags you can use is much larger, it takes
 | 
						|
	  longer to learn all of them, and how to use them effectively.</p>
 | 
						|
	
 | 
						|
	<p>I found the best way to learn was to read the source to lots of
 | 
						|
	  example documents, seeing how other authors had written similar
 | 
						|
	  information.</p></li>
 | 
						|
 | 
						|
      <li><p>The conversion process is not that simple.</p></li>
 | 
						|
    </ul>
 | 
						|
 | 
						|
    <h2>What if you do not know DocBook? Can you still
 | 
						|
      contribute?</h2>
 | 
						|
    
 | 
						|
    <p>Yes you can. Quite definitely. Any documentation is better than no
 | 
						|
      documentation. If you have got some documentation to contribute and it is
 | 
						|
      not marked up in DocBook, do not worry.</p>
 | 
						|
 | 
						|
    <p><a href="submitting.html">Submit</a> the documentation as
 | 
						|
      normal. Someone else on the Project will grab your committed
 | 
						|
      documentation, mark it up for you, and commit it. With a bit of luck
 | 
						|
      they'll then send you the marked up text back. This is handy because you
 | 
						|
      can do a "before and after" shot of the plain documentation and the
 | 
						|
      marked up stuff, and hopefully learn a bit more about the markup in the
 | 
						|
      process.</p>
 | 
						|
 | 
						|
    <p>Obviously, this slows down the committing process, since your submitted
 | 
						|
      documentation needs to be marked up, which may take an evening or too.
 | 
						|
      But it will get committed.</p>
 | 
						|
 | 
						|
    <h2>More information about SGML and DocBook?</h2>
 | 
						|
 | 
						|
    <p>You should first read the <a 
 | 
						|
        href="&base;/doc/en_US.ISO8859-1/books/fdp-primer/index.html"><b>Documentation Project 
 | 
						|
      Primer</b></a>.  This aims to be a comprehensive explanation of 
 | 
						|
      everything you need to know in order to work with the FreeBSD 
 | 
						|
      documentation.</p>
 | 
						|
 | 
						|
    <p>This is a long document, split in to many smaller files.  You can
 | 
						|
      also view it as <a 
 | 
						|
        href="&base;/doc/en_US.ISO8859-1/books/fdp-primer/book.html"><b>one
 | 
						|
      large file</b></a>.</p>
 | 
						|
 | 
						|
    <dl>
 | 
						|
      <dt><a
 | 
						|
	  href="http://www.oasis-open.org/cover/sgml-xml.html"><b>http://www.oasis-open.org/cover/sgml-xml.html</b></a></dt>
 | 
						|
 | 
						|
      <dd><p>The SGML/XML web page. Includes countless pointers to more
 | 
						|
	  information about SGML.</p></dd>
 | 
						|
 | 
						|
      <dt><a
 | 
						|
	  href="http://www-sul.stanford.edu/tools/tutorials/html2.0/gentle.html"><b>http://www-sul.stanford.edu/tools/tutorials/html2.0/gentle.html</b></a></dt>
 | 
						|
 | 
						|
      <dd><p>The "Gentle Introduction to SGML". Recommended reading for anyone 
 | 
						|
	who wants to learn more about SGML from a beginners
 | 
						|
	  perspective.</p></dd>
 | 
						|
      
 | 
						|
      <dt><a
 | 
						|
	  href="http://www.oasis-open.org/docbook/"><b>http://www.oasis-open.org/docbook/</b></a></dt>
 | 
						|
 | 
						|
      <dd><p>The DocBook DTD is maintained by OASIS.  These pages are aimed
 | 
						|
	at users who are already comfortable with SGML, and
 | 
						|
	who want to learn DocBook.</p>
 | 
						|
	</dd>
 | 
						|
    </dl>
 | 
						|
      
 | 
						|
      <p></p><a href="docproj.html">FreeBSD Documentation Project Home</a>
 | 
						|
&footer;
 | 
						|
  </body>
 | 
						|
</html>
 |