ISO/IEC 23360-1-4:2021
(Main)Linux Standard Base (LSB) - Part 1-4: Languages specification
Linux Standard Base (LSB) - Part 1-4: Languages specification
The LSB Languages specification defines components for runtime languages which are found on an LSB conforming system.
Noyau de base normalisé Linux (LSB) — Partie 1-4: Spécification du module de langues "Languages"
General Information
Relations
Overview
ISO/IEC 23360-1-4:2021 - Linux Standard Base (LSB) - Part 1-4: Languages specification defines the runtime language components that must be present on an LSB-conforming Linux system. Published in 2021 and prepared by the Linux Foundation, this part of the LSB series standardizes interpreter availability, runtime modules, and certain language-related libraries to improve binary portability and interoperability across Linux distributions.
Key Topics and Requirements
- Scope and Purpose: Specifies components for runtime languages found on LSB-conforming systems to support portable binary applications and consistent runtime behavior.
- Interpreters Covered: The document includes language-specific chapters (for example, Python and Perl) that describe interpreter presence, acceptable versions and behaviors, required operators/functions, modules, and interpreter command semantics.
- Libraries: Declares required language-related libraries and their runtime names (notably libxml2 - libxml2.so.2 and libxslt - libxslt.so.1). These libraries must reside in implementation-defined directories that the dynamic linker searches by default.
- Module Search and Installation: Defines that runtime modules shall be in implementation-defined directories which interpreters should search by default; the specification also addresses package dependencies and software installation policies.
- Versioning and Compatibility: Uses a clear versioning model (x.y or x.y.z) that defines major/minor/editorial changes and their compatibility implications. It encourages implementers to use symbol versioning where appropriate.
- Normative References: References established sources such as ISO C (1999), Perl 5.8.8 documents, Python 2.4.2 reference materials, libxml2 and libxslt manuals, and IEEE Std 1003.1 (POSIX) for definitions and behaviors.
Practical Applications and Who Uses It
- Linux distribution maintainers use this standard to ensure their systems provide the expected interpreters, modules, and libraries for binary compatibility.
- Independent software vendors (ISVs) and application packagers rely on LSB to build and distribute binaries that run reliably across multiple LSB-conformant distributions without per-distro customizations.
- System integrators and QA teams use the specification as a checklist for deployment, testing, and conformance activities.
- Open-source projects and maintainers adopt LSB language requirements to reduce runtime issues caused by missing modules or incompatible library versions.
Related Standards (if applicable)
- Other parts of the ISO/IEC 23360 (LSB) series
- ISO/IEC 9899:1999 (ISO C)
- Perl 5.8.8 Reference and Function documentation
- Python 2.4.2 Reference Manual and Library Reference
- libxml2 and libxslt reference manuals
- IEEE Std 1003.1 (POSIX) base definitions
Keywords: Linux Standard Base, LSB Languages specification, ISO/IEC 23360-1-4:2021, runtime languages, Python, Perl, libxml2, libxslt, ABI, package dependencies, Linux distribution compatibility.
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 23360-1-4
First edition
2021-10
Linux Standard Base (LSB) —
Part 1-4:
Languages specification
Reference number
©
ISO/IEC 2021
© ISO/IEC 2021
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting
on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address
below or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2021 – All rights reserved
Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are
members of ISO or IEC participate in the development of International Standards through technical
committees established by the respective organization to deal with particular fields of technical activity.
ISO and IEC technical committees collaborate in fields of mutual interest. Other international
organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the
work.
The procedures used to develop this document and those intended for its further maintenance are
described in the ISO/IEC Directives, Part 1. In particular, the different approval criteria needed for the
different types of document should be noted (see www.iso.org/directives or
www.iec.ch/members_experts/refdocs).
Attention is drawn to the possibility that some of the elements of this document may be the subject of
patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. Details
of any patent rights identified during the development of the document will be in the Introduction and/or
on the ISO list of patent declarations received (see www.iso.org/patents) or the IEC list of patent
declarations received (see patents.iec.ch).
Any trade name used in this document is information given for the convenience of users and does not
constitute an endorsement.
For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and
expressions related to conformity assessment, as well as information about ISO's adherence to the World
Trade Organization (WTO) principles in the Technical Barriers to Trade (TBT),
see www.iso.org/iso/foreword.html. In the IEC, see www.iec.ch/understanding-standards.
This document was prepared by the Linux Foundation as Linux Standard Base (LSB): Languages
specification and drafted in accordance with its editorial rules. It was assigned to Joint Technical
Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming languages, their
environments and system software interfaces, and adopted by National Bodies.
This first edition of ISO/IEC 23360-1-4 cancels and replaces ISO/IEC 23360-1:2006, which has been
technically revised.
This document is based on “The GNU Free Documentation License, version 1.1”. The license is available
at https://www.gnu.org/licenses/old-licenses/fdl-1.1.html.
A list of all parts in the ISO/IEC 23660 series can be found on the ISO and IEC websites.
Any feedback or questions on this document should be directed to the user’s national standards body. A
complete listing of these bodies can be found at www.iso.org/members.html and www.iec.ch/national-
committees.
© ISO/IEC 2021 – All rights reserved iii
Contents
Foreword . iii
Introduction . . v
I Introductory Elements . 1
1 Scope . 2
2 Normative References. 3
3 Requirements . 4
3.1 Relevant Libraries . 4
4 Terms and Definitions . 5
5 Documentation Conventions . 7
II Python Interpreter . 8
6 Python Interpreter . 9
6.1 Introduction . 9
6.2 Python Interpreter Location . 9
6.3 Python Interpreter Version . 9
6.4 Operators and Functions . 9
6.5 Python Modules . 9
6.6 Python Interpreter Command . 9
III Perl Interpreter . 15
7 Perl Interpreter . 16
7.1 Introduction . 16
7.2 Perl Interpreter Location . 16
7.3 Perl Interpreter Version . 16
7.4 Perl Operators and Functions . 16
7.5 Perl Modules . 16
7.6 Perl Interpreter Command . 19
IV XML2 library . 20
8 Libraries . 21
8.1 Interfaces for libxml2. 21
8.2 Data Definitions for libxml2. 49
V XSLT library . 126
9 Libraries . 127
9.1 Interfaces for libxslt . 127
9.2 Data Definitions for libxslt . 132
VI Package Format and Installation . 151
10 Software Installation . 152
10.1 Package Dependencies . 152
Annex A Alphabetical Listing of Interfaces by Library . 153
A.1 libxml2 . 153
A.2 libxslt . 181
iv © 2021 ISO/IEC – All rights reserved
Introduction
The LSB defines a binary interface for application programs that are compiled
and packaged for LSB-conforming implementations on many different hardware
architectures. A binary specification must include information specific to the
computer processor architecture for which it is intended. To avoid the complexity
of conditional descriptions, the specification has instead been divided into
generic parts which are augmented by one of several architecture-specific parts,
depending on the target processor architecture; the generic part will indicate
when reference must be made to the architecture part, and vice versa.
This document should be used in conjunction with the documents it references.
This document enumerates the system components it includes, but descriptions
of those components may be included entirely or partly in this document, partly
in other documents, or entirely in other reference documents. For example, the
section that describes system service routines includes a list of the system
routines supported in this interface, formal declarations of the data structures
they use that are visible to applications, and a pointer to the underlying
referenced specification for information about the syntax and semantics of each
call. Only those routines not described in standards referenced by this document,
or extensions to those standards, are described in the detail. Information
referenced in this way is as much a part of this document as is the information
explicitly included here.
The specification carries a version number of either the form x.y or x.y.z. This
version number carries the following meaning:
1. The first number (x) is the major version number. Versions sharing the same
major version number shall be compatible in a backwards direction; that is,
a newer version shall be compatible with an older version. Any deletion of
a library results in a new major version number. Interfaces marked as
deprecated may be removed from the specification at a major version
change.
2. The second number (y) is the minor version number. Libraries and
individual interfaces may be added, but not removed. Interfaces may be
marked as deprecated at a minor version change. Other minor changes may
be permitted at the discretion of the LSB workgroup.
3. The third number (z), if present, is the editorial level. Only editorial changes
should be included in such versions.
Since this specification is a descriptive Application Binary Interface, and not a
source level API specification, it is not possible to make a guarantee of 100%
backward compatibility between major releases. However, it is the intent that
those parts of the binary interface that are visible in the source level API will
remain backward compatible from version to version, except where a feature
marked as "Deprecated" in one release may be removed from a future release.
Implementors are strongly encouraged to make use of symbol versioning to
permit simultaneous support of applications conforming to different releases of
this specification.
LSB is a trademark of the Linux Foundation. Developers of applications or
implementations interested in using the trademark should see the Linux
Foundation Certification Policy for details.
v
© 2021 ISO/IEC – All rights reserved
I Introductory Elements
© 2021 ISO/IEC – All rights reserved 1
1 Scope
The LSB Languages specification defines components for runtime languages
which are found on an LSB conforming system.
2 © 2021 ISO/IEC – All rights reserved
2 Normative References
The specifications listed below are referenced in whole or in part by the LSB
Languages specification. Such references may be normative or informative; a
reference to specification shall only be considered normative if it is explicitly cited
as such. The LSB Languages specification may make normative references to a
portion of these specifications (that is, to define a specific function or group of
functions); in such cases, only the explicitly referenced portion of the specification
is to be considered normative.
Table 2-1 Informative References
Name Title URL
ISO C (1999) ISO/IEC 9899:1999 -
Programming
Languages -- C
Perl Core Modules Perl 5.8.8 Core Modules http://perldoc.perl.org
/5.8.8/index-modules-
A.html
Perl Functions Perl 5.8.8 Functions http://perldoc.perl.org
/5.8.8/perlfunc.html
Perl Language Perl 5.8.8 Language http://perldoc.perl.org
Reference Reference /5.8.8/index-
language.html
Perl Manual Perl 5.8.8 Manual Page http://perldoc.perl.org
/5.8.8/perlrun.html
Perl Operators Perl 5.8.8 Operators and http://perldoc.perl.org
Precedence /5.8.8/perlop.html
Perl Syntax Perl 5.8.8 Syntax http://perldoc.perl.org
/5.8.8/perlsyn.html
Python Library Python Library http://www.python.or
Reference Reference Release 2.4.2 g/doc/2.4.2/lib/lib.ht
ml
Python Reference Python Reference http://www.python.or
Manual Manual Release 2.4.2 g/doc/2.4.2/ref/ref.ht
ml
Reference Manual for Reference Manual for http://xmlsoft.org/ht
libxml2 libxml2 ml/index.html
Reference Manual for Reference Manual for http://xmlsoft.org/xslt
libxslt libxslt /html/index.html
© 2021 ISO/IEC – All rights reserved 3
3 Requirements
This specification describes runtime language interpreters which shall be found
in specified locations. It also defines a number of runtime modules which shall
be in an implementation-defined directory which the interpreters shall search by
default.
3.1 Relevant Libraries
The libraries listed in Table 3-1 shall be available on a Linux Standard Base system,
with the specified runtime names. This list may be supplemented or amended by
the architecture-specific specification.
Table 3-1 Standard Library Names
Library Runtime Name
libxml2 libxml2.so.2
libxslt libxslt.so.1
These libraries will be in an implementation-defined directory which the
dynamic linker shall search by default.
4 © 2021 ISO/IEC – All rights reserved
4 Terms and Definitions
For the purposes of this document, the terms and definitions given in ISO/IEC
2382, ISO 80000–2, and the following apply.
ISO and IEC maintain terminological databases for use in standardization at the
following addresses:
— ISO Online browsing platform: available at https://www.iso.org/obp
— IEC Electropedia: available at http://www.electropedia.org/
4.1
archLSB
Some LSB specification documents have both a generic, architecture-neutral
part and an architecture-specific part. The latter describes elements whose
definitions may be unique to a particular processor architecture. The term
archLSB may be used in the generic part to refer to the corresponding section
of the architecture-specific part.
4.2
Binary Standard, ABI
The total set of interfaces that are available to be used in the compiled binary
code of a conforming application, including the run-time details such as
calling conventions, binary format, C++ name mangling, etc.
4.3
Implementation-defined
Describes a value or behavior that is not defined by this document but is
selected by an implementor. The value or behavior may vary among
implementations that conform to this document. An application should not
rely on the existence of the value or behavior. An application that relies on
such a value or behavior cannot be assured to be portable across conforming
implementations. The implementor shall document such a value or behavior
so that it can be used correctly by an application.
4.4
Shell Script
A file that is read by an interpreter (e.g., awk). The first line of the shell script
includes a reference to its interpreter binary.
© 2021 ISO/IEC – All rights reserved 5
4.5
Source Standard, API
The total set of interfaces that are available to be used in the source code of a
conforming application. Due to translations, the Binary Standard and the
Source Standard may contain some different interfaces.
4.6
Undefined
Describes the nature of a value or behavior not defined by this document
which results from use of an invalid program construct or invalid data input.
The value or behavior may vary among implementations that conform to this
document. An application should not rely on the existence or validity of the
value or behavior. An application that relies on any particular value or
behavior cannot be assured to be portable across conforming
implementations.
4.7
Unspecified
Describes the nature of a value or behavior not specified by this document
which results from use of a valid program construct or valid data input. The
value or behavior may vary among implementations that conform to this
document. An application should not rely on the existence or validity of the
value or behavior. An application that relies on any particular value or
behavior cannot be assured to be portable across conforming
implementations.
In addition, for the portions of this specification which build on IEEE Std 1003.1-
2001, the definitions given in IEEE Std 1003.1-2001, Base Definitions, Chapter 3
apply.
6 © 2021 ISO/IEC – All rights reserved
5 Documentation Conventions
Throughout this document, the following typographic conventions are used:
function()
the name of a function
command
the name of a command or utility
CONSTANT
a constant value
parameter
a parameter
variable
a variable
Throughout this specification, several tables of interfaces are presented. Each
entry in these tables has the following format:
name
the name of the interface
(symver)
An optional symbol version identifier, if required.
[refno]
A reference number indexing the table of referenced specifications that
follows this table.
For example,
forkpty(GLIBC_2.0) [SUSv4]
refers to the interface named forkpty() with symbol version GLIBC_2.0 that is
defined in the reference indicated by the tag SUSv4.
Note: For symbols with versions which differ between architectures, the symbol
versions are defined in the architecture specific parts of of this module specification
only. In the generic part, they will appear without symbol versions.
© 2021 ISO/IEC – All rights reserved 7
II Python Interpreter
8 © 2021 ISO/IEC – All rights reserved
6 Python Interpreter
6.1 Introduction
The Python intrepreter API is described in the Python Library Reference, with
the following requirements for an LSB conforming runtime.
6.2 Python Interpreter Location
The Python interpreter binary, or a link to the binary, shall exist at
/usr/bin/python.
6.3 Python Interpreter Version
The default installed Python version shall be 2.4.2 or greater.
6.4 Operators and Functions
Core Python operators, subroutines, and built-in functions shall be present and
shall operate as defined in Python Reference Manual.
6.5 Python Modules
An LSB conforming implementation shall provide the Python modules as
described in Table 6-1 with at least the behavior described as mandatory in the
referenced underlying specification. Some Python modules may be marked as
deprecated, and applications should avoid using these as they may be withdrawn
in future releases of this specification.
Table 6-1 Python Modules
array [1] csv [1] imp [1] posix [1] sys [1]
binascii [1] datetime [1] itertools [1] pwd [1] syslog [1]
bisect [1] errno [1] locale [1] random [1] termios [1]
cPickle [1] exceptions marshal [1] re [1] thread [1]
[1]
cStringIO [1] fcntl [1] mmap [1] resource [1] time [1]
cmath [1] gc [1] operator [1] select [1] unicodedata
[1]
codecs [1] grp [1] os [1] signal [1] weakref [1]
collections heapq [1] ossaudiodev socket [1] zipimport [1]
[1] [1]
crypt [1] hotshot [1] parser [1] string [1] zlib [1]
Referenced Specification(s)
[1]. Python Reference Manual
6.6 Python Interpreter Command
This section contains a description of the python command.
© 2021 ISO/IEC – All rights reserved 9
PYTHON
Name
python — an interpreted, interactive, object-oriented programming language
Synopsis
python [-d ] [-E ] [-h ] [-i ] [ -m module-name ] [-O ] [ -Q argument ] [-
S ] [-t ] [-u ] [-v ] [-V ] [ -W argument ] [-x ] [ -c command | script |
- ] [arguments]
DESCRIPTION
Python is an interpreted, interactive, object-oriented programming language that
combines remarkable power with very clear syntax. For an introduction to
programming in Python you are referred to the Python Tutorial. The Python
Library Reference documents built-in and standard types, constants, functions
and modules. Finally, the Python Reference Manual describes the syntax and
semantics of the core language in (perhaps too) much detail. (These documents
may be located via the INTERNET RESOURCES below; they may be installed on
your system as well.)
Python's basic power can be extended with your own modules written in C or
C++. On most systems such modules may be dynamically loaded. Python is also
adaptable as an extension language for existing applications. See the internal
documentation for hints.
Documentation for installed Python modules and packages can be viewed by
running the pydoc program.
COMMAND LINE OPTIONS
-c command
Specify the command to execute (see next section). This terminates the option
list (following options are passed as arguments to the command).
-d
Turn on parser debugging output (for wizards only, depending on
compilation options).
-E
Ignore environment variables like PYTHONPATH and PYTHONHOME
that modify the behavior of the interpreter.
-h
Prints the usage for the interpreter executable and exits.
-i
When a script is passed as first argument or the -c option is used, enter
interactive mode after executing the script or the command. It does not read
the $PYTHONSTARTUP file. This can be useful to inspect global variables
or a stack trace when a script raises an exception.
-m module-name
10 © 2021 ISO/IEC – All rights reserved
Searches sys.path for the named module and runs the corresponding .py file
as a script.
-O
Turn on basic optimizations. This changes the filename extension for
compiled (bytecode) files from .pyc to .pyo. Given twice, causes docstrings
to be discarded.
-Q argument
Division control; see PEP 238. The argument must be one of "old" (the default,
int/int and long/long return an int or long), "new" (new division semantics,
i.e. int/int and long/long returns a float), "warn" (old division semantics
with a warning for int/int and long/long), or "warnall" (old division
semantics with a warning for all use of the division operator). For a use of
"warnall", see the Tools/scripts/fixdiv.py script.
-S
Disable the import of the module site and the site-dependent manipulations
of sys.path that it entails.
-t
Issue a warning when a source file mixes tabs and spaces for indentation in
a way that makes it depend on the worth of a tab expressed in spaces. Issue
an error when the option is given twice.
-u
Force stdin, stdout and stderr to be totally unbuffered. On systems where it
matters, also put stdin, stdout and stderr in binary mode. Note that there is
internal buffering in xreadlines(), readlines() and file-object iterators ("for
line in sys.stdin") which is not influenced by this option. To work around
this, you will want to use "sys.stdin.readline()" inside a "while 1:" loop.
-v
Print a message each time a module is initialized, showing the place
(filename or built-in module) from which it is loaded. When given twice,
print a message for each file that is checked for when searching for a module.
Also provides information on module cleanup at exit.
-V
Prints the Python version number of the executable and exits.
-W argument
Warning control. Python sometimes prints warning message to sys.stderr. A
typical warning message has the following form: file:line: category: message.
By default, each warning is printed once for each source line where it occurs.
This option controls how often warnings are printed. Multiple -W options
may be given; when a warning matches more than one option, the action for
the last matching option is performed. Invalid -W options are ignored (a
warning message is printed about invalid options when the first warning is
issued). Warnings can also be controlled from within a Python program
using the warnings module.
© 2021 ISO/IEC – All rights reserved 11
The simplest form of argument is one of the following action strings (or a
unique abbreviation): ignore to ignore all warnings; default to explicitly
request the default behavior (printing each warning once per source line); all
to print a warning each time it occurs (this may generate many messages if a
warning is triggered repeatedly for the same source line, such as inside a
loop); module to print each warning only only the first time it occurs in each
module; once to print each warning only the first time it occurs in the
program; or error to raise an exception instead of printing a warning message.
The full form of argument is action:message:category:module:line. Here, action is
as explained above but only applies to messages that match the remaining
fields. Empty fields match all values; trailing empty fields may be omitted.
The message field matches the start of the warning message printed; this
match is case-insensitive. The category field matches the warning category.
This must be a class name; the match test whether the actual warning
category of the message is a subclass of the specified warning category. The
full class name must be given. The module field matches the (fully-qualified)
module name; this match is case-sensitive. The line field matches the line
number, where zero matches all line numbers and is thus equivalent to an
omitted line number.
-x
Skip the first line of the source. This is intended for a DOS specific hack only.
Warning: the line numbers in error messages will be off by one!
INTERPRETER INTERFACE
The interpreter interface resembles that of the UNIX shell: when called with
standard input connected to a tty device, it prompts for commands and executes
them until an EOF is read; when called with a file name argument or with a file
as standard input, it reads and executes a script from that file; when called with -
c command, it executes the Python statement(s) given as command. Here command
may contain multiple statements separated by newlines. Leading whitespace is
significant in Python statements! In non-interactive mode, the entire input is
parsed before it is executed.
If available, the script name and additional arguments thereafter are passed to
the script in the Python variable sys.argv , which is a list of strings (you must first
import sys to be able to access it). If no script name is given, sys.argv[0] is an empty
string; if -c is used, sys.argv[0] contains the string '-c'. Note that options
interpreted by the Python interpreter itself are not placed in sys.argv.
In interactive mode, the primary prompt is >>>; the second prompt (which
appears when a command is not complete) is . The prompts can be changed by
assignment to sys.ps1 or sys.ps2. The interpreter quits when it reads an EOF at a
prompt. When an unhandled exception occurs, a stack trace is printed and control
returns to the primary prompt; in non-interactive mode, the interpreter exits after
printing the stack trace. The interrupt signal raises the KeyboardInterrupt
exception; other UNIX signals are not caught (except that SIGPIPE is sometimes
ignored, in favor of the IOError exception). Error messages are written to stderr.
FILES AND DIRECTORIES
These are subject to difference depending on local installation conventions;
${prefix} and ${exec_prefix} are installation-dependent and should be interpreted
as for GNU software; they may be the same. The default for both is /usr/local.
12 © 2021 ISO/IEC – All rights reserved
${exec_prefix}/bin/python
Recommended location of the interpreter.
${prefix}/lib/python ${exec_prefix}/lib/python
Recommended locations of the directories containing the standard modules.
${prefix}/include/python ${exec_prefix}/include/python
Recommended locations of the directories containing the include files needed for
developing Python extensions and embedding the interpreter.
~/.pythonrc.py
User-specific initialization file loaded by the user module; not used by default
or by most applications.
ENVIRONMENT VARIABLES
PYTHONHOME
Change the location of the standard Python libraries. By default, the libraries
are searched in ${prefix}/lib/python and
${exec_prefix}/lib/python, where ${prefix} and ${exec_prefix} are
installation-dependent directories, both defaulting to /usr/local. When
$PYTHONHOME is set to a single directory, its value replaces both ${prefix}
and ${exec_prefix}. To specify different values for these, set
$PYTHONHOME to ${prefix}:${exec_prefix}.
PYTHONPATH
Augments the default search path for module files. The format is the same
as the shell's $PATH: one or more directory pathnames separated by colons.
Non-existent directories are silently ignored. The default search path is
installation dependent, but generally begins with
${prefix}/lib/python (see PYTHONHOME above). The default
search path is always appended to $PYTHONPATH. If a script argument is
given, the directory containing the script is inserted in the path in front of
$PYTHONPATH. The search path can be manipulated from within a Python
program as the variable sys.path .
PYTHONSTARTUP
If this is the name of a readable file, the Python commands in that file are
executed before the first prompt is displayed in interactive mode. The file is
executed in the same name space where interactive commands are executed
so that objects defined or imported in it can be used without qualification in
the interactive session. You can also change the prompts sys.ps1 and sys.ps2
in this file.
PYTHONY2K
Set this to a non-empty string to cause the time module to require dates
specified as strings to include 4-digit years, otherwise 2-digit years are
converted based on rules described in the time module documentation.
PYTHONOPTIMIZE
If this is set to a non-empty string it is equivalent to specifying the -O option.
If set to an integer, it is equivalent to specifying -O multiple times.
PYTHONDEBUG
© 2021 ISO/IEC – All rights reserved 13
If this is set to a non-empty string it is equivalent to specifying the -d option.
If set to an integer, it is equivalent to specifying -d multiple times.
PYTHONINSPECT
If this is set to a non-empty string it is equivalent to specifying the -i option.
PYTHONUNBUFFERED
If this is set to a non-empty string it is equivalent to specifying the -u option.
PYTHONVERBOSE
If this is set to a non-empty string it is equivalent to specifying the -v option.
If set to an integer, it is equivalent to specifying -v multiple times.
AUTHOR
The Python Software Foundation: http://www.python.org/psf
INTERNET RESOURCES
Main website: http://www.python.org/ Documentation:
http://docs.python.org/ Community website: http://starship.python.net/
Developer resources: http://www.python.org/dev/ FTP:
ftp://ftp.python.org/pub/python/ Module repository:
http://www.vex.net/parnassus/ Newsgroups: comp.lang.python,
comp.lang.python.announce
LICENSING
Python is distributed under an Open Source license. See the file "LICENSE" in the
Python source distribution for information on terms & conditions for accessing
and otherwise using Python and for a DISCLAIMER OF ALL WARRANTIES.
14 © 2021 ISO/IEC – All rights reserved
III Perl Interpreter
© 2021 ISO/IEC – All rights reserved 15
7 Perl Interpreter
7.1 Introduction
The Perl intrepreter API is described in the Perl Language Reference, with the
following requirements for an LSB conforming runtime.
7.2 Perl Interpreter Location
The Perl interpreter binary, or a link to the binary, shall exist at /usr/bin/perl.
7.3 Perl Interpreter Version
The default installed Perl version shall be 5.8.8 or greater.
7.4 Perl Operators and Functions
Core Perl operators, subroutines, and built-in functions shall be present and shall
operate as defined in Perl Syntax, Perl Operators and Perl Functions.
7.5 Perl Modules
An LSB conforming implementation shall provide the Perl modules as described
in Table 7-1 with at least the behavior described as mandatory in the referenced
underlying specification. Some Perl modules may be marked as deprecated, and
applications should avoid using these as they may be withdrawn in future
releases of this specification.
Table 7-1 Perl Modules
AnyDBM_Fil Encode::JP I18N::Collate Net::Time [1] Test::More
e [1] [1] [1] [1]
Attribute::Ha Encode::JP:: I18N::LangT Net::hostent Test::Simple
ndlers [1] H2Z [1] ags [1] [1] [1]
AutoLoader Encode::JP::JI I18N::LangT Net::netent Text::Abbrev
[1] S7 [1] ags::Detect [1] [1]
[1]
AutoSplit [1] Encode::KR I18N::LangT Net::protoent Text::Balance
[1] ags::List [1] [1] d [1]
B::Concise [1] Encode::KR:: I18N::Langin Net::servent Text::ParseW
2022_KR [1] fo [1] [1] ords [1]
B::Debug [1] Encode::MIM IO [1] O [1] Text::Sounde
E::Header [1] x [1]
B::Deparse Encode::Sym IO::Dir [1] Opcode [1] Text::Tabs [1]
[1] bol [1]
B::Lint [1] Encode::TW IO::File [1] POSIX [1] Text::Wrap
[1] [1]
B::Showlex Encode::Unic IO::Handle PerlIO [1] Tie::Array [1]
[1] ode [1] [1]
B::Terse [1] Encode::Unic IO::Pipe [1] PerlIO::enco Tie::File [1]
ode::UTF7 [1] ding [1]
16 © 2021 ISO/IEC – All rights reserved
B::Xref [1] English [1] IO::Poll [1] PerlIO::scalar Tie::Handle
[1] [1]
Benchmark Env [1] IO::Seekable PerlIO::via Tie::Hash [1]
[1] [1] [1]
CGI [1] Exporter [1] IO::Select [1] PerlIO::via:: Tie::Memoiz
QuotedPrint e [1]
[1]
CGI::Apache Exporter::He IO::Socket [1] Pod::Checker Tie::RefHash
[1] avy [1] [1] [1]
CGI::Carp [1] ExtUtils::Co IO::Socket::I Pod::Find [1] Tie::Scalar [1]
mmand [1] NET [1]
CGI::Cookie ExtUtils::Co IO::Socket::U Pod::Functio Tie::SubstrH
[1] mmand::MM NIX [1] ns [1] ash [1]
[1]
CGI::Pretty ExtUtils::Inst IPC::Msg [1] Pod::Html Time::HiRes
[1] all [1] [1] [1]
CGI::Push [1] ExtUtils::Inst IPC::Open2 Pod::InputO Time::Local
alled [1] [1] bjects [1] [1]
CGI::Util [1] ExtUtils::Libl IPC::Open3 Pod::LaTeX Time::gmtim
ist [1] [1] [1] e [1]
CPAN [1] ExtUtils::Libl IPC::Semaph Pod::Man [1] Time::localti
ist::Kid [1] ore [1] me [1]
CPAN::First ExtUtils::MM Pod::ParseLi
IPC::SysV [1] Time::tm [1]
Time [1] _Unix [1] nk [1]
CPAN::Nox ExtUtils::MY List::Util [1] Pod::ParseUt Unicode::Col
[1] [1] ils [1] late [1]
Carp [1] ExtUtils::Ma Locale::Coun Pod::Parser Unicode::Nor
keMaker [1] try [1] [1] malize [1]
Carp::Heavy ExtUtils::Ma Locale::Curre Pod::Perldoc: Unicode::UC
keMaker::Co :ToChecker
[1] ncy [1] D [1]
nfig [1] [1]
Class::Struct ExtUtils::Ma Locale::Lang Pod::Perldoc: User::grent
[1] nifest [1] uage [1] :ToMan [1] [1]
Cwd [1] ExtUtils::Mk Locale::Make Pod::Perldoc: User::pwent
bootstrap [1] text [1] :ToNroff [1] [1]
DB [1] ExtUtils::Mks Locale::Script Pod::Perldoc: attributes [1]
ymlists [1] [1] :ToPod [1]
DBM_Filter ExtUtils::Pac MIME::Base6 Pod::Perldoc: autouse [1]
[1] klist [1] 4 [1] :ToText [1]
DBM_Filter:: ExtUtils::testl MIME::Quot Pod::PlainTe base [1]
encode [1] ib [1] edPrint [1] xt [1]
DBM_Filter::i Fatal [1] Math::BigFlo Pod::Select bigint [1]
nt32 [1] at [1] [1]
© 2021 ISO/IEC – All rights reserved 17
DBM_Filter:: Fcntl [1] Math::BigInt Pod::Text [1] bignum [1]
null [1] [1]
DBM_Filter:: File::Basena Math::BigInt: Pod::Text::Co bigrat [1]
utf8 [1] me [1] :Calc [1] lor [1]
Data::Dumpe File::CheckTr Math::BigInt: Pod::Text::O blib [1]
r [1] ee [1] :CalcEmu [1] verstrike [1]
Devel::PPPor File::Compar Math::BigRat Pod::Text::Te bytes [1]
t [1] e [1] [1] rmcap [1]
Devel::Peek File::Copy [1] Math::Compl Pod::Usage charnames
[1] ex [1] [1] [1]
Devel::SelfSt File::DosGlo Math::Trig SDBM_File constant [1]
ubber [1] b [1] [1] [1]
Digest [1] File::Find [1] Memoize [1] Safe [1] diagnostics
[1]
Digest::MD5 File::Glob [1] Memoize::An Scalar::Util fields [1]
[1] yDBM_File [1]
[1]
Digest::base File::Path [1] Memoize::Ex Search::Dict filetest [1]
[1] pire [1] [1]
Digest::file File::Spec [1] Memoize::Ex SelectSaver if [1]
[1] pireFile [1] [1]
DirHandle File::Spec::Fu Memoize::Ex SelfLoader integer [1]
[1] nctions [1] pireTest [1] [1]
Dumpvalue File::Spec::U Memoize::SD Socket [1] less [1]
[1] nix [1] BM_File [1]
Encode [1] File::Temp Memoize::St Storable [1] locale [1]
[1] orable [1]
Encode::Alia File::stat [1] NEXT [1] Sys::Hostna open [1]
s [1] me [1]
Encode::Byte FileCache [1] Net::Cmd [1] Sys::Syslog overload [1]
[1] [1]
Encode::CJK FileHandle Net::Config Term::ANSI re [1]
Constants [1] [1] [1] Color [1]
Encode::CN Filter::Simple Net::Domain Term::Compl sigtrap [1]
[1] [1] [1] ete [1]
Encode::CN:: Filter::Util::C Net::FTP [1] Term::ReadL sort [1]
HZ [1] all [1] ine [1]
Encode::Conf FindBin [1] Net::NNTP Test::Builder strict [1]
ig [1] [1] [1]
Encode::EBC GDBM_File Net::Netrc Test::Builder: subs [1]
DIC [1] [1] [1] :Module [1]
18 © 2021 ISO/IEC – All rights reserved
Encode::Enco Getopt::Long Net::POP3 Test::Builder: utf8 [1]
der [1] [1] [1] :Tester [1]
Encode::Enco Getopt::Std Net::Ping [1] Test::Builder: warnings [1]
ding [1] [1] :Tester::Color
[1]
Encode::Gue Hash::Util [1] Net::SMTP Test::Harness warnings::re
ss [1] [1] [1] gister [1]
Referenced Specification(s)
[1]. Perl Language Reference
7.6 Perl Interpreter Command
The perl command is described in Perl Manual.
© 2021 ISO/IEC – All rights reserved 19
IV XML2 library
20 © 2021 ISO/IEC – All rights reserved
8 Libraries
8.1 Interfaces for libxml2
Table 8-1 defines the library name and shared object name for the libxml2 library
Table 8-1 libxml2 Definition
Library: libxml2
SONAME: libxml2.so.2
The behavior of the interfaces in this library is specified by the following specifi-
cations:
[libXML2] Reference Manual for libxml2
8.1.1 The XML C parser and toolkit for XML processing
8.1.1.1 Interfaces for The XML C parser and toolkit for XML
processing
An LSB conforming implementation shall provide the generic functions for The
XML C parser and toolkit for XML processing specified in Table 8-2, with the full
mandatory functionality as described in the referenced underlying specification.
Table 8-2 libxml2 - The XML C parser and toolkit for XML processing Function
Interfaces
UTF8ToHtml(LIBXML2 UTF8Toisolat1(LIBXML __docbDefaultSAXHan
_2.4.30) [libXML2] 2_2.4.30) [libXML2] dler [libXML2]
__htmlDefaultSAXHan __oldXMLWDcompatib __xmlBufferAllocSchem
dler [libXML2] ility [libXML2] e [libXML2]
__xmlDefaultBufferSize __xmlDefaultSAXHand __xmlDefaultSAXLocat
[libXML2] ler [libXML2] or [libXML2]
__xmlDeregisterNodeD __xmlDoValidityChecki __xmlGenericError
ngDefaultValue
efaultValue [libXML2] [libXML2]
[libXML2]
__xmlGenericErrorCont __xmlGetWarningsDefa __xmlIndentTreeOutpu
ext [libXML2] ultValue [libXML2] t [libXML2]
__xmlKeepBlanksDefau __xmlLastError __xmlLineNumbersDef
ltValue [libXML2] [libXML2] aultValue [libXML2]
__xmlLoadExtDtdDefa __xmlOutputBufferCre __xmlParserDebugEntit
ateFilenameValue
ultValue [libXML2] ies [libXML2]
[libXML2]
__xmlParserInputBuffer __xmlParserVersion __xmlPedanticParserDe
CreateFilenameValue [libXML2] faultValue [libXML2]
[libXML2]
__xmlRegisterNodeDef __xmlSaveNoEmptyTa __xmlStructuredError
aultValue [libXML2] gs [libXML2] [libXML2]
© 2021 ISO/IEC – All rights reserved 21
__xmlSubstituteEntities __xmlTreeIndentString docbDefaultSAXHandle
rInit(LIBXML2_2.4.30)
DefaultValue [libXML2] [libXML2]
[libXML2]
htmlAttrAllowed(LIBX htmlAutoCloseTag(LIB htmlCreateFileParserCt
ML2_2.5.2) [libXML2] XML2_2.4.30) xt(LIBXML2_2.4.30)
[libXML2] [libXML2]
htmlCreateMemoryPars htmlCreatePushParserC htmlCtxtReadDoc(LIBX
erCtxt(LIBXML2_2.5.7) txt(LIBXML2_2.4.30) ML2_2.6.0) [libXML2]
[libXML2] [libXML2]
htmlCtxtReadFd(LIBX htmlCtxtReadFile(LIBX htmlCtxtReadIO(LIBX
ML2_2.6.0) [libXML2] ML2_2.6.0) [libXML2] ML2_2.6.0) [libXML2]
htmlCtxtReadMemory( htmlCtxtReset(LIBXML htmlCtxtUseOptions(LI
LIBXML2_2.6.0) 2_2.6.0) [libXML2] BXML2_2.6.0)
[libXML2] [libXML2]
htmlDefaultSAXHandle htmlDocContentDump htmlDocContentDump
rInit(LIBXML2_2.4.30) FormatOutput(LIBXML Output(LIBXML2_2.4.3
[libXML2] 2_2.4.30) [libXML2] 0) [libXML2]
htmlDocDump(LIBXM htmlDocDumpMemory htmlElementAllowedH
L2_2.4.30) [libXML2] (LIBXML2_2.4.30) ere(LIBXML2_2.5.2)
[libXML2] [libXML2]
htmlElementStatusHere htmlEncodeEntities(LIB htmlEntityLookup(LIB
(LIBXML2_2.5.2) XML2_2.4.30) XML2_2.4.30)
[libXML2] [libXML2] [libXML2]
htmlEntityValueLooku htmlFreeParserCtxt(LIB htmlGetMetaEncoding(
p(LIBXML2_2.4.30) XML2_2.4.30) LIBXML2_2.4.30)
[libXML2] [libXML2] [libXML2]
htmlHandleOmitte
...
Frequently Asked Questions
ISO/IEC 23360-1-4:2021 is a standard published by the International Organization for Standardization (ISO). Its full title is "Linux Standard Base (LSB) - Part 1-4: Languages specification". This standard covers: The LSB Languages specification defines components for runtime languages which are found on an LSB conforming system.
The LSB Languages specification defines components for runtime languages which are found on an LSB conforming system.
ISO/IEC 23360-1-4:2021 is classified under the following ICS (International Classification for Standards) categories: 35.080 - Software. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO/IEC 23360-1-4:2021 has the following relationships with other standards: It is inter standard links to ISO/IEC 23360-1:2006. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.
You can purchase ISO/IEC 23360-1-4:2021 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...