LINQ could become the next query API for Java, after the majority agreed at a recent meeting of the Object Database Technology Working Group (ODBTWG), as well as the International Conferences on Object Databases (ICOODB) conference in Berlin that it was the optimal solution.
ODBTWG, founded by the Object Management Group (OMG), is working on a new standard for object databases based on the ODMG 3.0. Mike Card, the chair of ODBTWG said in an interview that the OMG should be involved in the writing of a JSR, to include LINQ functionality in Java.
At the meeting it was agreed that the following areas needed standardisation:
|> Object life cycle in memory — building on current Java standards such as JDO and JPA, standards regarding object creation, deletion and database transactions need to be defined;
|> Object identification — preventing the re-use of object identifiers, as it can cause problems;
|> Session — defining a session in terms of concurrency control and transactions;
|> Object model — defining an object model for the work;
|> Native language APIs - whether they will be based on Java APIs in ODMG 3.0 or be different;
|> Conformance test suite — will be required for each OO language a standard is defined for;
|> Error behaviour — defining exceptions.
Whether LINQ is the right choice has sparked a debate; some believe its popularity in the .NET community and the fact that it's available for Java make it the perfect solution, while others think that a more vendor-neutral solution such as SBQL would be better.
At the ODBTWG, however, it was found that some language characteristics of SBQL would not be familiar to C++, C# and Java developers, hence LINQ was a better option.