Provided by: dpkg-dev_1.19.0.5ubuntu2.4_all bug

NAAM

       deb822 - Debian RFC822-indeling voor controledata

BESCHRIJVING

       Het  pakketbeheersysteem  gebruikt  gegevens die volgens een gangbare indeling weergegeven
       worden, die controledata  (control-data)  genoemd  worden  en  die  opgeslagen  worden  in
       controlebestanden    (control-bestanden).    Controlebestanden    worden   gebruikt   voor
       broncodepakketten, voor binaire pakketten en voor de .changes-bestanden die de installatie
       van  geüploade  bestanden  sturen  (de  interne databases van dpkg hebben een soortgelijke
       indeling).

SYNTAXIS

       Een controlebestand bestaat uit één of meer paragrafen die velden bevatten (de  paragrafen
       worden  soms ook met de term stanzas aangeduid). De paragrafen worden onderling gescheiden
       door een lege regel. Bij ontleders (parsers) kunnen regels die enkel  bestaan  uit  U+0020
       SPATIE  en  U+0009  TAB,  gebruikt  worden  als scheidingsteken tussen paragrafen, maar in
       controlebestanden moeten lege regels gebruikt  worden.  In  sommige  controlebestanden  is
       enkel  één  paragraaf  toegestaan,  in  andere meerdere. In dat geval heeft elke paragraaf
       meestal betrekking op een ander  pakket.  (In  broncodepakketten  bijvoorbeeld,  heeft  de
       eerste  paragraaf  betrekking op het broncodepakket en de volgende op de binaire pakketten
       die  uit  de  broncode  gegenereerd  worden.)   De   volgorde   van   de   paragrafen   in
       controlebestanden is betekenisvol.

       Elke  paragraaf  bestaat  uit  een reeks gegevensvelden. Elk veld bestaat uit de veldnaam,
       gevolgd door een dubbelepunt (U+003A ‘:’) en nadien de data/waarde die bij dat veld hoort.
       De  veldnaam wordt gevormd uit US-ASCII-tekens met uitsluiting van controle-tekens, spatie
       en dubbelepunt (d.w.z. tekens uit het bereik U+0021 ‘!’ tot en met U+0039 ‘9’ en  uit  het
       bereik  U+003B  ‘;’  tot  en  met  U+007E  ‘~’).  Veldnamen  mogen  niet  beginnen met het
       commentaarteken (U+0023 ‘#’) en evenmin met het verbindingsteken (U+002D ‘-’).

       Het veld eindigt op het einde van de regel of op het einde  van  de  laatste  vervolgregel
       (zie  later).  Er  mag  horizontale witruimte (U+0020 SPATIE en U+0009 TAB) voorkomen vlak
       voor en vlak na de waarde en daar wordt die  genegeerd.  Het  is  gebruikelijk  om  na  de
       dubbelepunt een enkele spatie te plaatsen. Een voorbeeld van een veld zou kunnen zijn:
              Package: dpkg
       de veldnaam is Package en de waarde van het veld is dpkg.

       Lege   veldwaarden  mogen  enkel  voorkomen  in  controlebestanden  van  broncodepakketten
       (debian/control). Dergelijke velden worden genegeerd.

       In een paragraaf mag een specifieke veldnaam slechts eenmaal voorkomen.

       Er bestaan drie types velden:

       simple (enkelvoudig) Het veld, met inbegrip van zijn waarde,  moet  op  één  enkele  regel
              staan. Het uitvouwen van het veld is niet toegestaan. Dit is het standaard veldtype
              als de definiëring van het veld geen ander type vermeldt.

       folded (uitgevouwen) De waarde  van  een  uitgevouwen  veld  is  een  logische  regel  die
              verschillende regels mag beslaan. De regels na de eerste regel worden vervolgregels
              genoemd en moeten beginnen met een U+0020 SPATIE of een U+0009 TAB. Witruimte,  met
              inbegrip van regeleindes, is in de veldwaarde van uitgevouwen velden betekenisloos.

              Deze  uitvouwmethode is gelijkaardig aan RFC5322, waardoor parsers die voor RFC5322
              geschreven werden, ook in staat zijn controlebestanden te  lezen  die  slechts  één
              paragraaf en geen velden van het multiregel-type bevatten.

       multiline
              (multiregel)   De   waarde   van  een  multiregel-veld  mag  bestaan  uit  meerdere
              vervolgregels. De eerste regel van de waarde, het deel dat op dezelfde regel  staat
              als  de  veldnaam,  heeft  vaak  een  bijzondere betekenis en kan ook leeg zijn. De
              andere regels gebruiken dezelfde syntaxis  als  de  vervolgregels  van  uitgevouwen
              velden.   Witruimte,   met   inbegrip   van   regeleindes,  is  in  de  waarde  van
              multiregel-velden betekenisvol.

       Er mag geen witruimte voorkomen in namen (van pakketten, architecturen,  bestanden  of  om
       het  even  wat),  in  versienummers  of tussen de tekens van versierelaties die uitgedrukt
       worden in meerdere tekens.

       De aanwezigheid en de functie  van  een  veld  en  de  syntaxis  van  zijn  waarde  kunnen
       verschillen naargelang het type van controlebestand.

       Veldnamen  zijn  niet hoofdlettergevoelig, maar het is gebruikelijk om in veldnamen hoofd-
       en kleine letters samen te gebruiken, zoals hierna geïllustreerd wordt.  Veldwaarden  zijn
       wel  hoofdlettergevoelig,  tenzij  het  in  de beschrijving van het veld anders aangegeven
       wordt.

       Paragraafscheidingstekens (lege regels) en regels die enkel bestaan uit U+0020  SPATIE  en
       U+0009  TAB,  mogen  in  veldwaarden en tussen velden niet gebruikt worden. Lege regels in
       veldwaarden worden meestal gemaskeerd door ze  voor  te  stellen  als  een  U+0020  SPATIE
       gevolgd door een punt (U+002E ‘.’).

       Regels  die  beginnen  met  U+0023  ‘#’  zonder  dat  daar witruimte aan vooraf gaat, zijn
       commentaarregels. Zij zijn enkel toegelaten  in  controlebestanden  van  broncodepakketten
       (debian/control)  en  in  deb-origin(5)-bestanden. Deze commentaarregels worden genegeerd,
       zelfs tussen twee vervolgregels in. Ze sluiten geen logische regels af.

       Alle controlebestanden moeten in UTF-8 opgesteld worden.

ZIE OOK

       RFC822, RFC5322.