The library provides operations on UUIDs. Please consult other sources
for understanding UUIDs and the implications of the different UUID
versions. Some typical calls are given below:
X = 'ea6589fa-19dd-11e2-8a49-001d92e1879d'.
?- uuid(X, [url('http://www.swi-prolog.org')]).
X = '73a07870-6a90-3f2e-ae2b-ffa538dc7c2c'.
- See also
- - http://www.ossp.org/pkg/lib/uuid/
- - https://en.wikipedia.org/wiki/Universally_unique_identifier
- To be done
- - Compare UUIDs, extract time and version from UUIDs
- uuid(-UUID) is det
- UUID is an atom representing a new UUID. This is the same as
uuid(UUID, ). See uuid/2 for options.
- uuid(-UUID, +Options) is det
- Create a new UUID according to Options. The following options
- Integer in the range 1..5, which specifies the UUID version
that is created. Default is 1.
- Provide additional context information for UUIDs using version
3 or 5. If there is no explicit version option, UUID version
3 is used.
- Representation of the UUID. Default is
atom, yielding atoms
integer, returning a large integer that
represents the 128 bits of the UUID.
If SWI-Prolog was not built with the OSSP UUID dependency library a
simple Prolog alternative that only implements version 4 random
UUIDs is provided. In this case the default version is 4 and the
only admissible options are
- uuid_property(+UUID, ?Property)
- True when UUID is a property of the given UUID. Supported properties
- Return the version of the UUID (1..5)
- Time using SWI-Prolog's time stamp (float with seconds
since January 1, 1970, UTC). Only for version 1 and 2
- To be done
- - Implement more properties.