Я бы не рекомендовал использовать SDO, если он не навязан вам какой-либо другой частью проекта.
Сервер процессов WebSphere использует SDO. Это не очень плохой API, как только вы его изучите. Но спецификация и документация расплывчаты. В нем не прописано, что происходит, если вы запрашиваете несуществующее поле или выполняет ли преобразование типов при получении или установке полей, чтобы назвать две пробелы.
Я не думаю, что API определяет, как определять новые типы, так что эта часть будет зависеть от реализации. Определения типов основаны на XSD, поэтому вы будете работать с этими и всеми соответствующими стандартами.
Как и предполагали другие, API широко не используется. Это означает, что будет трудно найти людей, которые с этим сталкивались, или помочь в их использовании.