For each object stored, Siaqodb assigns a unique integer identifier per Type called OID. This OID is kept internally but can be also exposed to objects if the class definition contains the automatic property OID.

For example objects of following class may be stored by Siaqodb:

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

OID will be kept internally in this case and can be provided to client code by:

siaqodb.GetOID(person);

However if you would like to access the OID along with object, you can do this by adding OID property to class definition:

public class Person
{
    public int OID{get;set;}
    public string Name { get; set; }
    public int Age { get; set; }
}

The database engine will automatically handle and assigns values to OID property and it guarantees uniqueness per Type.