Overview
ISO/IEC 13719-2:1998 defines the C programming language binding for the Portable Common Tool Environment (PCTE). It maps the abstract PCTE specification (ISO/IEC 13719-1) to a concrete, portable C API so that tools and environments for systems engineering can interoperate. This second edition standardizes datatype mappings, calling conventions, memory ownership, error reporting and a wide range of PCTE services when accessed from C.
Key topics and technical requirements
- Binding strategy: a one-to-one mapping of most abstract operations to C functions, following ISO/IEC TR 10182 guidelines for procedural language bindings. Functions return a Pcte_error_type status; all other outputs are via output parameters.
- Datatype mapping: rules for converting PCTE datatypes to C, including predefined and private datatypes, enumerations, records, choices, bounded sets and the special Pcte_sequence and Pcte_string types.
- Strings and text: String (8-bit octet sequences) is mapped to Pcte_string; Text (Latin‑1) is mapped to native C strings (char *) with NUL termination semantics.
- Sets and sequences: bounded sets map to bit-significant naturals; unbounded sets and sequences use the private Pcte_sequence type with creation, access and deletion operations.
- Memory allocation and ownership: clear rules for public vs. private types - callers allocate public types; implementations allocate private type storage and manage lifetime until explicitly discarded.
- References and names: object, attribute, link and type references are private types that support internal and external designations; name-based and reference-based interfaces are provided (reference-based APIs are prefixed with Pcte_h_).
- Operational areas: bindings covering object management, schema management, volumes/devices/archives, files/pipes/devices, process execution, message queues, notification, concurrency/integrity control, replication, networking, discretionary and mandatory security, auditing, accounting, references, limits and error conditions.
- Conformance & limits: specifies how implementations demonstrate conformance to ISO/IEC 13719-1 and documents implementation limits (clause 24).
Practical applications and users
- Tool and middleware vendors implementing PCTE services in C for integrated development environments (IDEs), configuration management, or systems engineering toolchains.
- Systems integrators and developers who need a portable C API to access PCTE features (object/schema management, security, process control, auditing).
- Organizations seeking interoperability between heterogeneous tools by adopting the PCTE C binding for consistent datatype, error and memory semantics.
Related standards