| DocBook: The Definitive Guide 2.0.17 (Alpha)

# synopfragment

$Revision$

$Date$

synopfragment — A portion of a `CmdSynopsis` broken out from the main body of the synopsis

## Synopsis

### Content Model

    synopfragment ::=
    ((arg|group)+)

### Attributes

Common attributes

## Description

A complex `CmdSynopsis` can be made more manageable with `SynopFragment`s. Rather than attempting to present the entire synopsis in one large piece, parts of the synopsis can be extracted out and presented elsewhere. These extracted pieces are placed in `SynopFragment`s at the end of the `CmdSynopsis`.

At the point in which each piece was extracted, insert a `SynopFragmentRef` that points to the fragment. The content of the reference element will be presented inline.

### Processing expectations

Formatted as a displayed block.

The presentation system is responsible for generating text that makes the reader aware of the link. This can be done with numbered bullets, or any other appropriate mechanism. Whatever mark is generated for the reference must also be generated for the fragment.

Online systems have additional flexibility. They may generate hot links between the references and the fragments, for example, or place the fragments in pop-up windows.

### Parents

These elements contain synopfragment: `cmdsynopsis`.

### Children

The following elements occur in synopfragment: `arg`, `group`.

## See Also

`arg`, `cmdsynopsis`, `group`, `refsynopsisdiv`, `sbr`, `synopfragmentref`.

## Examples

    <!DOCTYPE cmdsynopsis PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
              "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
    <cmdsynopsis>
      <command>cccp</command>
      <arg>-$</arg>
      <arg>-C</arg>
      <arg rep='repeat'>-D<replaceable>name</replaceable>
           <arg>=<replaceable>definition</replaceable></arg></arg>
      <arg>-dD</arg>
      <arg>-dM</arg>
      <sbr/>
      <arg rep='repeat'>-I <replaceable>directory</replaceable></arg>
      <arg>-H</arg>
      <arg>-I-</arg>
      <arg rep='repeat'>-imacros <replaceable>file</replaceable></arg>
      <sbr/>
      <arg rep='repeat'>-include <replaceable>file</replaceable></arg>
      <group>
        <synopfragmentref linkend="langs">languages</synopfragmentref>
      </group>
      <arg>-lint</arg>
      <sbr/>
      <group>
        <arg>-M</arg>
        <arg>-MD</arg>
        <arg>-MM</arg>
        <arg>-MMD</arg>
      </group>
      <arg>-nostdinc</arg>
      <arg>-P</arg>
      <arg>-pedantic</arg>
      <sbr/>
      <arg>-pedantic-errors</arg>
      <arg>-trigraphs</arg>
      <arg>-U<replaceable>name</replaceable></arg>
      <sbr/>
      <arg>-undef</arg>
      <arg choice="plain"><synopfragmentref linkend="warn">warnings
        </synopfragmentref></arg>
      <group choice='req'>
        <arg><replaceable>infile</replaceable></arg>
        <arg>-</arg>
      </group>
      <group choice='req'>
        <arg><replaceable>outfile</replaceable></arg>
        <arg>-</arg>
      </group>

      <synopfragment id="langs">
        <group choice="plain">
          <arg>-lang-c</arg>
          <arg>-lang-c++</arg>
          <arg>-lang-objc</arg>
        </group>
      </synopfragment>

      <synopfragment id="warn">
        <arg>-Wtrigraphs</arg>
        <arg>-Wcomment</arg>
        <arg>-Wall</arg>
        <arg>-Wtraditional</arg>
      </synopfragment>

    </cmdsynopsis>

`cccp` [-$] [-C] [-D`name` [=`definition`]...] [-dD] [-dM]
[-I `directory`...] [-H] [-I-] [-imacros `file`...]
[-include `file`...] [(1) languages] [-lint]
[[-M] | [-MD] | [-MM] | [-MMD]] [-nostdinc] [-P] [-pedantic]
[-pedantic-errors] [-trigraphs] [-U`name`]
[-undef] (2) warnings {[`infile`] | [-]} {[`outfile`] | [-]}(1) [-lang-c] | [-lang-c++] | [-lang-objc] (2) [-Wtrigraphs] [-Wcomment] [-Wall] [-Wtraditional]

symbol |  | synopfragmentref

Copyright © 1999, 2000, 2001, 2002, 2003 O'Reilly & Associates, Inc. All rights reserved.