orthonym.assembly.handlers.nitrate_ester#
Note
Internal API. Names and behaviour may change between releases.
Nitrate-ester handler – functional-class naming.
An ester of nitric acid R-O-NO2 is named in the two-word functional-class form
<R> nitrate. (heading ‘Esters of mononuclear noncarbon
oxoacids’, the Blue Book),:35918: “Esters of mononuclear noncarbon acids
are named in the same way as esters of organic acids (see. Alkyl
groups, aryl groups, etc. are cited as separate words, in alphanumerical order
when more than one, and followed by the name of the appropriate anion.” The
nitrous-acid sibling is ‘pentyl nitrite (PIN)’ (:35922), built by
handlers/nitrite_ester.py; nitric acid is monobasic and its anion is ‘nitrate’.
The group is perceived as nitrooxy ([O-][N+](=O)O-C, the charge-separated
drawing). ‘nitrooxy’ is the preselected prefix of the ester group,
:36401, ‘-O-NO2 nitrooxy (preselected prefix)’:36405), used when a senior class
names the parent (‘3-(nitrooxy)propanoic acid’, ‘ethyl 3-(nitrooxy)propanoate’);
it has no suffix, so a molecule whose only characteristic group is the ester
has no principal group, and without this producer it was named substitutively
as ‘(nitrooxy)ethane’, which is not the PIN, Table 4.1,:18182: esters,
class 9, rank above every class a prefix-only group can express).
- Scope, fail-closed (None) outside it:
the oxygen carries an alcohol component: an acyl, thioacyl or imidoyl carbon there makes a mixed anhydride,:32272), named by the anhydride producer (‘acetic nitric anhydride’);
exactly one nitric-acid ester group. Several nitrate groups on one alcohol component are an ester of a polyol, named with a multivalent organyl group, ‘Polyesters formed from a single ‘alcoholic’ component’,:31815; ‘ethane-1,2-diyl diacetate (PIN)’:31823), which this producer does not build; the prefix name stays below the PIN.
no principal characteristic group (
principal_groupNone) and no nitrite ester, so any group that could compete with the ester for the parent defers;the molecule is neutral apart from the N+/O- pair of the nitrate group, and the alcohol component plus the four atoms of the group are the whole molecule.
- orthonym.assembly.handlers.nitrate_ester.name_nitrate_ester(features, mol=None, style='pin')#
Emit
<R> nitratefor an ester of nitric acid R-O-NO2.From the
nitrooxymatch (O-, N+, =O, ester O, R carbon) the alcohol component R (the subgraph at the R carbon that does not cross the ester oxygen) is named by the universal substituent pipeline and joined as"<R> nitrate". Returns None (defer) when R cannot be named or the molecule is outside the scope of the module docstring.