Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zeilenumbruch in docbook XML

504 views
Skip to first unread message

Daniel Ammon

unread,
Mar 17, 2002, 12:05:54 PM3/17/02
to

Hallo!

Diese Frage ist bestimmt schon tausendmal gestellt worden. Aber per
google hab ich keine brauchbare Lösung gefunden:
Wie kann ich erreichen, daß ich mit Docbook-XML innerhalb eins
<para>-Tag einen Zeilenumbruch erreiche. Nur ein simpler Zeilenumbruch,
wie in Tausende von Autoren täglich brauchen und benutzen. Mir ist schon
klar, daß DocBook ein Auszeichnungs-sprache, und kein Formatierwerkzeug
ist. Aber ein Zeilenumbruch ist für mich durchaus eine inhaltliche
Auszeichnung, und eben nicht nur "schöner" anzusehen.
Für eine praktische Lösung wäre ich dankbar.

Tschüß,

Daniel
--
http://go.to/wingnus - Gnus unter Windows installieren

Michael Wiedmann

unread,
Mar 17, 2002, 12:17:32 PM3/17/02
to
In article <lmcrru...@ID-37296.news.dfncis.de>, Daniel Ammon wrote:
[...]

> Wie kann ich erreichen, daß ich mit Docbook-XML innerhalb eins
><para>-Tag einen Zeilenumbruch erreiche. Nur ein simpler Zeilenumbruch,
[...]

> ist. Aber ein Zeilenumbruch ist für mich durchaus eine inhaltliche
> Auszeichnung, und eben nicht nur "schöner" anzusehen.

IMO nicht möglich und auch nicht wünschenswert. Eine Zeilenumbruch hat
mit logischen Markup nun mal nichts zu tun...

Michael
--
m...@miwie.in-berlin.de http://www.miwie.org
m...@miwie.org

Daniel Ammon

unread,
Mar 17, 2002, 4:18:50 PM3/17/02
to
Michael Wiedmann <mi...@miwie.in-berlin.de> writes:


> IMO nicht möglich und auch nicht wünschenswert. Eine Zeilenumbruch hat
> mit logischen Markup nun mal nichts zu tun...

Für mich *ist* ein Zeilenumbruch eine Form von logischem Markup. Er
markiert inhaltliche Teile *eines* Absatzes. Es gibt Sätze, die sind
inhaltlich nicht eng genug miteinander verbunden, um in reinem Fließtext
zu stehen, aber dennoch inhaltlich nicht soweit voneinander entfernt,
einen neuen Absatz zu rechtfertigen. Wann hatten die Maintainer von
DocBook ihre letzte Deutsch-Stunde (jaja, sind wohl Amis, aber ist wohl
klar, wie es gemeint ist.)?

Torsten Bronger

unread,
Mar 17, 2002, 4:40:32 PM3/17/02
to
Halloechen!

Daniel Ammon wrote:

> Für mich *ist* ein Zeilenumbruch eine Form von logischem Markup. Er
> markiert inhaltliche Teile *eines* Absatzes. Es gibt Sätze, die sind
> inhaltlich nicht eng genug miteinander verbunden, um in reinem Fließtext
> zu stehen, aber dennoch inhaltlich nicht soweit voneinander entfernt,
> einen neuen Absatz zu rechtfertigen. Wann hatten die Maintainer von
> DocBook ihre letzte Deutsch-Stunde (jaja, sind wohl Amis, aber ist wohl
> klar, wie es gemeint ist.)?

Auch wenn ich vom konsequenten logischem Markup nicht viel halte, muß
ich hier den DocBook-Designern recht geben. Die inhaltlichen Teile
eines Absatzes sind eben die Saetze. Du wirst da draussen kein Buch
finden, das zur logischen Gliederung eines Absatzes einen
Zeilenumbruch durchfuehrt. Naja, es sei denn, den Autor hat's selber
gesetzt.

Ich schliesse damit jedoch *nicht* aus, dass es andere Stellen eines
Textes gibt, an denen es wehtut, dass DocBook keinen Zeilenumbruch
erlaubt.

Tschoe,
Torsten.

Henrik Motakef

unread,
Mar 17, 2002, 3:20:56 PM3/17/02
to
Daniel Ammon <am...@addcom.de> writes:

> Für mich *ist* ein Zeilenumbruch eine Form von logischem Markup. Er
> markiert inhaltliche Teile *eines* Absatzes.

Ist evtl <phrase> was für dich?

----------------------------------------------------------------------
The Phrase element in DocBook has no specific semantic. It is provided
as a wrapper around a selection of words smaller than a paragraph so
that it is possible to provide an ID or other attributes for them.

--------------------<http://www.docbook.org/tdg/en/html/phrase.html>--

Das markiert inhaltliche Teile eines Absatzes.

Um daraus einen Zeilenumbruch zu machen, musst du vmtl. deine
Stylesheets anpassen - Das Konzept ``Zeile'' hat mit logischem Markup
nun wirklich nichts zu tun, ein Zeilenumbruch ist eine nur Konvention,
wie man logische Teile eines Textes optisch voneinander trennt.

hth
Henrik

Henrik Motakef

unread,
Mar 17, 2002, 3:24:02 PM3/17/02
to
Henrik Motakef <henrik....@web.de> writes:

> Das markiert inhaltliche Teile eines Absatzes.

Wohlgemerkt, man kann es benutzen, um inhaltliche Teile eines Absatzes
zu markieren. Im Grunde markiert es nur irgendwelche Teile eines
Absatzes.

cu
Henrik

Daniel Ammon

unread,
Mar 17, 2002, 5:18:54 PM3/17/02
to
Torsten Bronger <bro...@physik.rwth-aachen.de> writes:

> Auch wenn ich vom konsequenten logischem Markup nicht viel halte, muß
> ich hier den DocBook-Designern recht geben. Die inhaltlichen Teile
> eines Absatzes sind eben die Saetze. Du wirst da draussen kein Buch
> finden, das zur logischen Gliederung eines Absatzes einen
> Zeilenumbruch durchfuehrt. Naja, es sei denn, den Autor hat's selber
> gesetzt.

Hmm, zur rein *logischen* Gliederung vielleicht nicht, aber zur
inhaltlichen Differenzierung oder zur Hervorhebung. Aber ich habe gerade
etwas in meiner Büchersammlung recherchiert, und muß dir (fast) Recht
geben. Dort, wo Zeilenumbrüche vorherrschen, markieren sie
Absätze. Leerzeilen im Fließtext kommen dann nur extrem selten vor. Aber
das müßte sich ja mit Stylesheets imitieren lassen.



> Ich schliesse damit jedoch *nicht* aus, dass es andere Stellen eines
> Textes gibt, an denen es wehtut, dass DocBook keinen Zeilenumbruch
> erlaubt.

Ja, da fallen mir gleich mehrere ein. Vor allem, weil logische Struktur
und graphische Repräsentation sich nicht soweit trennen lassen, wie das die
Theoretiker vielleicht gerne hätten. Und teilweise gibt es dann auch in
DocBook Zugeständnisse (emphasize-Tag z.B.). Und genau in diesem Sinne
würde ich eben gerne Zeilenumbrüche einsetzen. Man hat z.B. einen Satz,
der mit einem Link endet. Um den Link noch zusätzlich etwas
hervorzuheben, wäre ein Zeilenumbruch nach dem Link sehr hilfreich.
Zumindest bei einem wie-auch-immer-gearteten Buch kommt es letztlich
darauf an, daß eine Kommunikation zwischen Leser und Autor entsteht. Und
das kann der Autor umso besser beeinflußen, je differenzierter die ihm
zur Verfügung stehenden Werkzeuge sind.
Wenn man XML im Datenbank-Bereich benutzt, ist das natürlich ganz was
anderes. Aber auch im Datenbank-Design versucht man, die Realität so gut
wie möglich abzubilden und nicht, die Realität an logische Strukturen
anzupassen. Aber das ist ja auch nur meine Meinung.

Bernd Eckenfels

unread,
Mar 17, 2002, 5:29:40 PM3/17/02
to
Torsten Bronger <bro...@physik.rwth-aachen.de> wrote:
> Auch wenn ich vom konsequenten logischem Markup nicht viel halte, mu?

> ich hier den DocBook-Designern recht geben. Die inhaltlichen Teile
> eines Absatzes sind eben die Saetze. Du wirst da draussen kein Buch
> finden, das zur logischen Gliederung eines Absatzes einen
> Zeilenumbruch durchfuehrt.

Hmm.. nun, da werden dir die Setzer aber nicht zustimmen.
Flattersatz mit sinnfälligem Zeilenumbruch ist gerade in Texten zum
Konsultierenden Lesen (nachschlagen) oder querlesen (Differenzierendes
Lesen, Informierendes Lesen) hilfreich.

> Ich schliesse damit jedoch *nicht* aus, dass es andere Stellen eines
> Textes gibt, an denen es wehtut, dass DocBook keinen Zeilenumbruch
> erlaubt.

Man kann einfach eine PI verwenden. Da dies sowieso für das Processing von
Interesse ist. In SGML z.b. <?line-break?>

Gruss
Bernd

Michael Wiedmann

unread,
Mar 17, 2002, 6:30:13 PM3/17/02
to
Daniel Ammon wrote:
[...]

> Theoretiker vielleicht gerne hätten. Und teilweise gibt es dann auch in
> DocBook Zugeständnisse (emphasize-Tag z.B.). Und genau in diesem Sinne

<emphasize> heißt lediglich "hervorheben", wie das umgesetzt wird bestimmt
das Stylesheet. Für HTML sehen die Default-(DSSSL)-Stylesheets <I> vor,
es liegt aber an dir das in deinem Customization Layer zu ändern.

> würde ich eben gerne Zeilenumbrüche einsetzen. Man hat z.B. einen Satz,

Dann bliebt dir immer noch der Weg DocBook so anzupassen, dass es einen
Zeilenumbruch innerhalb <para> erlaubt. Logisches Markup nenne ich sowas
allerdings nicht mehr. Auch wenn DocBook nicht 100% konsequent sein sollte,
wäre das keine Begründung dafür, diese IMO sinnvolle Regel noch weiter
zu verletzen.

Daniel Ammon

unread,
Mar 17, 2002, 7:00:45 PM3/17/02
to
Henrik Motakef <henrik....@web.de> writes:

> Ist evtl <phrase> was für dich?
>
> ----------------------------------------------------------------------
> The Phrase element in DocBook has no specific semantic. It is provided
> as a wrapper around a selection of words smaller than a paragraph so
> that it is possible to provide an ID or other attributes for them.
>
> --------------------<http://www.docbook.org/tdg/en/html/phrase.html>--
>
> Das markiert inhaltliche Teile eines Absatzes.

Das könnte funktionieren. Danke.



> Um daraus einen Zeilenumbruch zu machen, musst du vmtl. deine
> Stylesheets anpassen - Das Konzept ``Zeile'' hat mit logischem Markup
> nun wirklich nichts zu tun, ein Zeilenumbruch ist eine nur Konvention,
> wie man logische Teile eines Textes optisch voneinander trennt.

Ich seh es ja ein ;)
Obwohl... sind nicht auch Absätze nur "Konventionen"? Aber für
Meta-Diskussionen bin ich jetzt zu müde. Und wie schon wo anders
erwähnt, die DTD für ein Buch sollte sich an den Bedürfnissen der
Anwender orientieren, nicht umgekehrt. Ausnahmen bestätigen natürlich
die Regel. Es gibt auch viele Fälle, da muß die Freiheit eines Autors
eingeschränkt werden, damit seine Dokumente ins Gesamtkonzept passen.
Aber das Fehlen eines Tags für einen Zeilenumbruch... ich weiß nicht. In
TEI gibts ja auch sowohl <p> als auch <lb>.

Daniel Ammon

unread,
Mar 17, 2002, 7:35:57 PM3/17/02
to
Michael Wiedmann <m...@miwie.in-berlin.de> writes:

> <emphasize> heißt lediglich "hervorheben", wie das umgesetzt wird bestimmt
> das Stylesheet. Für HTML sehen die Default-(DSSSL)-Stylesheets <I> vor,
> es liegt aber an dir das in deinem Customization Layer zu ändern.

Schon klar, aber <emphasize> ist de facto doch eher ein gestalterisches
Mittel. Das zeigt sich IMO nicht zuletzt daran, daß fast alle erhältlichen
DocBook-Dokumente gleich aussehen. Viele Autoren machen sich nicht die
Mühe, eigene StyleSheets zu verwenden.
Interessant finde ich es auch, daß das Standard-Stylesheet eine
Serifen-Schriftart als Standard vorsieht, obwohl es (wie ich gehört habe)
erwiesen ist, daß gerade im Dokumentationsbereich serifenlose Schriften
besser sind.



> Dann bliebt dir immer noch der Weg DocBook so anzupassen, dass es einen
> Zeilenumbruch innerhalb <para> erlaubt. Logisches Markup nenne ich sowas
> allerdings nicht mehr. Auch wenn DocBook nicht 100% konsequent sein sollte,
> wäre das keine Begründung dafür, diese IMO sinnvolle Regel noch weiter
> zu verletzen.

Anpassen kann mans natürlich immer noch. Aber man hat ja meist seine
Gründe, warum man sich an Standards halten möchte. Und wenn man die dann
als unzureichend empfindet, ist man halt nicht so begeistert.

Daniel Ammon

unread,
Mar 17, 2002, 7:38:41 PM3/17/02
to
Bernd Eckenfels <ecki-new...@lina.inka.de> writes:

> Man kann einfach eine PI verwenden. Da dies sowieso für das Processing von
> Interesse ist. In SGML z.b. <?line-break?>

Aah, des Rätsels Lösung. Multo grazie. Das müßte ja auch mit XML
funktionieren.

Henrik Motakef

unread,
Mar 17, 2002, 6:04:54 PM3/17/02
to
Daniel Ammon <am...@addcom.de> writes:

[Quotings passend umsortiert]

> Obwohl... sind nicht auch Absätze nur "Konventionen"?

Na ja, was nicht? Aber ein Absatz kann verschiedenes bedeuten,
z.B. "inhaltlich zusammengehöriger Teil eines Textes" oder "Ansammlung
von Buchstaben, die durch Zwischenraum oder Einrückung vom nächsten
Absatz abgehoben ist."

>In TEI gibts ja auch sowohl <p> als auch <lb>.

Ja, aber das hat nichts mit dem zu tun, was do willst. TEI hat einen
wesentlich stärkeren Focus darauf, bestehende Texte nachträglich
auszuzeichnen, wärend Docbook mehr oder weniger direkt für den Autor
gedacht ist (die TEI Guidelines sind das einzige Dokument an das ich
mich erinnern kann, das im Original in TEI verfasst ist). Ein <lb/> in
TEI bedeutet nicht "mach hier einen Zeilenumbruch", sondern "im
Originaltext ist hier ein Zeilenumbruch".

> Und wie schon wo anders erwähnt, die DTD für ein Buch sollte sich an
> den Bedürfnissen der Anwender orientieren, nicht
> umgekehrt. Ausnahmen bestätigen natürlich die Regel. Es gibt auch
> viele Fälle, da muß die Freiheit eines Autors eingeschränkt werden,
> damit seine Dokumente ins Gesamtkonzept passen.

Ausnahmen von der Regel werden sowohl von Docbook wie von TEI
unterstützt. Wenn du gerne ein <html:br/> hättest, passe die DTD
entspechend an - und natürlich alles, was du sonst noch brauchst,
damit auch wirklich ein Zeilenumbruch ausgegeben wird. Das tut der
Interoperabilität natürlich nicht gut.

mfg
Henrik

Henrik Motakef

unread,
Mar 17, 2002, 6:10:48 PM3/17/02
to
Daniel Ammon <am...@addcom.de> writes:

> Schon klar, aber <emphasize> ist de facto doch eher ein gestalterisches
> Mittel.

Nein, es wird als solches misbraucht. Ob ich ein Wort hervorheben oder
es kursiv setzen möchte ist ein Unterschied.

> Interessant finde ich es auch, daß das Standard-Stylesheet eine
> Serifen-Schriftart als Standard vorsieht, obwohl es (wie ich gehört habe)
> erwiesen ist, daß gerade im Dokumentationsbereich serifenlose Schriften
> besser sind.

Das hat IMHO mit dem "Dokumentationsbereich" nichts zu tun. Man kann
argumentieren, dass serifenlose Schriften für eine
Bildschirmpräsentation geeigneter sind, aber einen gedruckten Text in
einer serifenlosen Schrift zu setzen ist so gut wie immer unsinnig.

mfg
Henrik

Michael Wiedmann

unread,
Mar 18, 2002, 5:12:01 AM3/18/02
to
Bernd Eckenfels wrote:

> Man kann einfach eine PI verwenden. Da dies sowieso für das Processing von
> Interesse ist. In SGML z.b. <?line-break?>

Im Prinzip schon, nur muß man dafür die üblicherweise zur Verfügung stehenden
Toolketten aufbohren, da AFAIK keine dies out-of-the-box unterstützt.

Daniel Ammon

unread,
Mar 18, 2002, 5:07:08 AM3/18/02
to
Henrik Motakef <henrik....@web.de> writes:

> > Obwohl... sind nicht auch Absätze nur "Konventionen"?
>
> Na ja, was nicht? Aber ein Absatz kann verschiedenes bedeuten,
> z.B. "inhaltlich zusammengehöriger Teil eines Textes" oder "Ansammlung
> von Buchstaben, die durch Zwischenraum oder Einrückung vom nächsten
> Absatz abgehoben ist."

Klar, ich wollte damit sagen, daß die üblichen Regeln auch nicht in
Stein gemeistelt sind.


> >In TEI gibts ja auch sowohl <p> als auch <lb>.
>
> Ja, aber das hat nichts mit dem zu tun, was do willst. TEI hat einen
> wesentlich stärkeren Focus darauf, bestehende Texte nachträglich
> auszuzeichnen, wärend Docbook mehr oder weniger direkt für den Autor
> gedacht ist (die TEI Guidelines sind das einzige Dokument an das ich
> mich erinnern kann, das im Original in TEI verfasst ist). Ein <lb/> in
> TEI bedeutet nicht "mach hier einen Zeilenumbruch", sondern "im
> Originaltext ist hier ein Zeilenumbruch".

Es macht Spaß mit Dir zu diskutieren :)

Es stimmt schon, daß TEI anderen Zwecken dient. Aber die Tatsache, daß
es Texte gibt, in denen ein Zeilenumbruch vorhanden ist, beweist doch,
daß es einen Bedarf daran gibt. Und diesen Bedarf deckt DocBook von Haus
aus nicht. Aber daß Problem hat sich mit dem Hinweis auf PI hoffentlich
eh gelöst.



> Ausnahmen von der Regel werden sowohl von Docbook wie von TEI
> unterstützt. Wenn du gerne ein <html:br/> hättest, passe die DTD
> entspechend an - und natürlich alles, was du sonst noch brauchst,
> damit auch wirklich ein Zeilenumbruch ausgegeben wird. Das tut der
> Interoperabilität natürlich nicht gut.

ACK.

Daniel Ammon

unread,
Mar 18, 2002, 5:18:27 AM3/18/02
to
Henrik Motakef <henrik....@web.de> writes:


> > Schon klar, aber <emphasize> ist de facto doch eher ein gestalterisches
> > Mittel.
>
> Nein, es wird als solches misbraucht. Ob ich ein Wort hervorheben oder
> es kursiv setzen möchte ist ein Unterschied.

Ja, aber... Jede DTD wird auch an ihrem praktischem Nutzen
gemessen. Und wenn <emphasize> vor allem als Gestaltungsmittel
"mißbraucht" wird, sagt das IMO mehr über den Nutzwert des Tags, als
über die Faulheit der Anwender aus. Die Anwender versuchen immer, ihre
Vorstellungen mit den gegebenen Mitteln zu erreichen. Dieser Tatsache
muß jedes Gremium, das für das Festlegen von Standards zuständig ist,
ins Auge blicken. Man muß ja deswegen nicht gleich solchen Schindluder
damit treiben, wie bei HTML. Gibt es eigentlich irgendwo einen
Flash-Hass-Verein? So ne Art
Modem-Besitzer-gegen-Schnick-Schnack-Initiative?

> > Interessant finde ich es auch, daß das Standard-Stylesheet eine
> > Serifen-Schriftart als Standard vorsieht, obwohl es (wie ich gehört habe)
> > erwiesen ist, daß gerade im Dokumentationsbereich serifenlose Schriften
> > besser sind.
>
> Das hat IMHO mit dem "Dokumentationsbereich" nichts zu tun. Man kann
> argumentieren, dass serifenlose Schriften für eine
> Bildschirmpräsentation geeigneter sind, aber einen gedruckten Text in
> einer serifenlosen Schrift zu setzen ist so gut wie immer unsinnig.

Yep. So ähnlich hatte ich das auch in Erinnernung. Ganz davon abgesehen,
daß ich den (kostensparenden) Trend zu papierlosen Dokumentationen für
furchtbar halte. Nicht jeder hat nen Laserdrucker.

Bernd Eckenfels

unread,
Mar 20, 2002, 1:50:37 PM3/20/02
to
Michael Wiedmann <m...@miwie.in-berlin.de> wrote:
> Im Prinzip schon, nur mu? man daf?r die ?blicherweise zur Verf?gung stehenden
> Toolketten aufbohren, da AFAIK keine dies out-of-the-box unterst?tzt.

Daran wird man wohl so oder so nicht vorbei kommen. Aber die PI verletzt am
wenigsten die DocBook Idee und benötigt kein DTD Customizing.

Ausserdem stammt die Idee von Norm Walsh, der wollte sie auch in die Stylesheets
übernehmen. Man muss Ihn wohl mal triggern :)

http://sources.redhat.com/ml/docbook/1999-q3/msg00080.html
http://lists.oasis-open.org/archives/docbook/200009/msg00021.html

Gruss
Bernd

Michael Wiedmann

unread,
Mar 20, 2002, 4:11:51 PM3/20/02
to
On 20 Mar 2002 18:50:37 GMT Bernd Eckenfels wrote:

> Ausserdem stammt die Idee von Norm Walsh, der wollte sie auch in die
> Stylesheets übernehmen. Man muss Ihn wohl mal triggern :)

OK, diesen "Trigger" habe ich eben ausgeloest.

Gruss

Michael Wiedmann

unread,
Mar 22, 2002, 1:39:43 PM3/22/02
to
On 20 Mar 2002 18:50:37 GMT Bernd Eckenfels wrote:
...

> Ausserdem stammt die Idee von Norm Walsh, der wollte sie auch in die
> Stylesheets übernehmen. Man muss Ihn wohl mal triggern :)
...

Hier die Antwort von Norman Walsh himself:

/ Michael Wiedmann <m...@miwie.in-berlin.de> was heard to say:
| In a thread in 'de.comp.text.xml' concerning forced line-breaks in <para>s
| Bernd Eckenfels posted two links [1,2] to postings which show that
| Norm thought of implementing a processing instruction like <?line-break?>
| in the DSSSL/XSL stylesheets to support such forced line-breaks.

I'm resisting it. Adding something to let authors randomly tweak the
presentation bothers me. What's the semantic meaning of the line break
in your context?

| Is this still on the TODO-list for DSSSL/XSL stylesheets?

Not actively. You might file a feature request at sf.net/projects/docbook
to make sure it's on the list.

D.h. also wer wirklich sowas braucht sollte den ensrpechenden Request selbst
stellen und schauen was passiert...

Daniel Ammon

unread,
Mar 24, 2002, 3:40:35 PM3/24/02
to
Michael Wiedmann <m...@miwie.in-berlin.de> writes:

> D.h. also wer wirklich sowas braucht sollte den ensrpechenden Request selbst
> stellen und schauen was passiert...

Alles klar, vielen Dank.

Tschüß,

Daniel
--
http://go.to/wingnus - Gnus unter Windows installieren

The lion and the calf shall lie down together, but the calf won't get
much sleep - Woody Allen

0 new messages