| Type | Description |
| TYPE_list | a list whose the type of each element is TYPE |
| TYPE1_or_TYPE2 | a term whose type is either TYPE1 or TYPE2 |
| atom | an atom |
| atom_property | an atom property (section 7.19.12) |
| boolean | the atom true or false |
| byte | an integer ≥ 0 and ≤ 255 |
| callable_term | an atom or a compound term |
| character | a single character atom |
| character_code | an integer ≥ 1 and ≤ 255 |
| clause | a clause (fact or rule) |
| close_option | a close option (section 7.10.7) |
| compound_term | a compound term |
| evaluable | an arithmetic expression (section 7.6.1) |
| fd_bool_evaluable | a boolean FD expression (section 8.7.1) |
| fd_labeling_option | an FD labeling option (section 8.9.1) |
| fd_evaluable | an arithmetic FD expression (section 8.6.1) |
| fd_variable | an FD variable |
| flag | a Prolog flag (section 7.22.1) |
| float | a floating point number |
| head | a head of a clause (atom or compound term) |
| integer | an integer |
| in_byte | an integer ≥ 0 and ≤ 255 or -1 (for the end-of-file) |
| in_character | a single character atom or the atom end_of_file (for the end-of-file) |
| in_character_code | an integer ≥ 1 and ≤ 255 or -1 (for the end-of-file) |
| io_mode | an atom in: read, write or append |
| list | the empty list [] or a non-empty list [_|_] |
| nonvar | any term that is not a variable |
| number | an integer or a floating point number |
| operator_specifier | an operator specifier (section 7.14.10) |
| os_file_property | an operating system file property (section 7.27.11) |
| predicate_indicator | a term Name/Arity where Name is an atom and Arity an integer ≥ 0. A callable term can be given if the strict_iso Prolog flag is switched off (section 7.22.1) |
| predicate_property | a predicate property (section 7.8.2) |
| read_option | a read option (section 7.14.1) |
| socket_address | a term of the form 'AF_UNIX'(A) or 'AF_INET'(A,N) where A is an atom and N an integer |
| socket_domain | an atom in: 'AF_UNIX' or 'AF_INET' |
| source_sink | an atom identifying a source or a sink |
| stream | a stream-term: a term of the form '$stream'(N) where N is an integer ≥ 0 |
| stream_option | a stream option (section 7.10.6) |
| stream_or_alias | a stream-term or an alias (atom) |
| stream_position | a stream position: a term '$stream_position'(I1, I2, I3, I4) where I1, I2, I3 and I4 are integers |
| stream_property | a stream property (section 7.10.10) |
| stream_seek_method | an atom in: bof, current or eof |
| term | any term |
| var_binding_option | a variable binding option (section 7.5.3) |
| write_option | a write option (section 7.14.6) |