OSGMLNORM(1)
πΈ OSGMLNORM(1) β the osgmlnorm page, bestie edition πΈ
okay so real talk: this is osgmlnorm, aka the SGML/XML document normalizer from section 1 of the manual. she's giving quiet librarian energy but she's actually iconic. let's get into it π
β¨ SYNOPSIS β¨
osgmlnorm [-CdeghmnrRvx] [-alinktype] [-Aarchitecture] [-bbctf]
[-ccatalog] [-Ddirectory...] [-Emax_errors...] [-iname...]
[-fname...] [-wwarning...] [sysid...]
look at her. so many little flags. a whole alphabet of options. we love a girl with range π
π DESCRIPTION π
so what does she actually do? osgmlnorm prints a normalized document instance on standard output for the SGML document contained in the concatenation of the entities with system identifiers. yes bestie, that's the whole vibe: she takes your messy SGML and hands it back all tidy and normalized, straight to stdout. β¨
and here's the tea β when the normalized instance is prefixed with the original SGML declaration and prolog, it will have the same ESIS as the original SGML document. but (and there's always a but) with these exceptions:
- The output of
osgmlnormdoes not protect against the recognition of short reference delimiters, so anyUSEMAPdeclarations must be removed from the DTD. - The normalized instance will use the reference delimiters, even if the original instance did not.
- If marked sections are included in the output using the
-moption, the reference reserved names will be used for the status keywords even if the original instance did not. - Any ESIS information relating to the SGML LINK feature will be lost. gone. no cap. π
also, the normalized instance will not use any markup minimization features, except that:
- Any attributes that were not specified in the original instance will not be included in the normalized instance. (Current attributes will be included, don't worry bestie.)
- If the declared value of an attribute was a name token group, and a value was specified that was the same as the name of the attribute, then the attribute name and value indicator will be omitted. for example, with HTML
osgmlnormwould output<DL COMPACT>rather than<DL COMPACT="COMPACT">β lowkey efficient, highkey slay π
Part of an SGML System Conforming to International Standard ISO 8879 -- Standard Generalized Markup Language. An SGML Extended Facilities system conforming to Annex A of International Standard ISO/IEC 10744 -- Hypermedia/Time-based Structuring Language. π¦
The following options are available, and yes, we're going through all of them:
-aname,--activate=nameβ Make doctype or linktype name active.-Aarchitecture,--architecture=architectureβ Parse with respect to architecture architecture.-bbctf,--bctf=bctfβ Use the BCTF with name bctf for output.-csysid,--catalog=sysidβ Map public identifiers and entity names to system identifiers using the catalog entry file whose system identifier is sysid.-C,--catalogsβ This has the same effect as inonsgmls(1).-d,--dtdβ Output a document type declaration with the same external identifier as the input document, and with no internal declaration subset. No check is performed that the document instance is valid with respect to this DTD. (so don't come for her if your doc is invalid, she literally said she's not checking π)-Ddirectory,--directory=directoryβ Search directory for files specified in system identifiers.
This has the same effect as in onsgmls(1).
-e,--open-entitiesβ Describe open entities in error messages.--error-numbersβ Show error numbers in error messages.-h,--helpβ Display a help text and exit.-iname,--include=nameβ This has the same effect as inonsgmls(1).-m,--marked-sectionsβ Output any marked sections that were in the input document instance.-n,--commentsβ Output any comments that were in the input document instance.-r,--rawβ Raw output. Don't perform any conversion on RSs and REs when printing the entity. The entity would typically have the storage manager attributerecords=asis.-R,--restrictedβ This has the same effect as inonsgmls(1).-v,--versionβ Print the version number.-wtypeβ Control warnings and errors according to type. This has the same effect as inonsgmls(1).
β οΈ heads up bestie: a bunch of these options say "this has the same effect as inonsgmls(1)" β that's not me being lazy, that's literally what the page says, so go readonsgmls(1)if you need the deets. iykyk π
π SEE ALSO π
π«Ά AUTHORS π«Ά
- James Clark β Author.
- Ian Castle
<ian.castle@openjade.org>β Author.
two legends, one manpage. we stan β
π COPYRIGHT π
this one's brought to you by OpenJade, dated January 2002 β and that's the whole footer, so let me do it justice: shoutout to OpenJade for dropping OSGMLNORM(1) back in January 2002 and living in the Reference section of the manual ever since. periodt. πβ¨
π¦ where this page comes from
- alpine 3.22: opensp-doc 1.5.2-r6 Β· ICU
- alpine 3.23: opensp-doc 1.5.2-r6 Β· ICU
- alpine 3.24: opensp-doc 1.5.2-r6 Β· ICU
- arch rolling: opensp 1.5.2-11 Β· MIT
- debian bookworm: opensp 1.5.2-13+b2
- debian trixie: opensp 1.5.2-15.2
- nixos 26.05: opensp 1.5.2
- nixpkgs unstable: opensp 1.5.2
- opensuse-leap 16.0: opensp-doc 1.5.2-160000.2.2 Β· MIT
- ubuntu noble: opensp 1.5.2-15ubuntu2
- ubuntu questing: opensp 1.5.2-15.2ubuntu1
- ubuntu resolute: opensp 1.5.2-15.2ubuntu2
- ubuntu stonking: opensp 1.5.2-15.2ubuntu2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms