

Use Data Abstract for Xcode to build 100% native Objective-C database client applications for Mac or iPhone & iPad, using Data Abstract's time proven multi-tier architecture. The first release of Data Abstract for Xcode is available now.
If you are already using one of the other editions of Data Abstract, you can now access your existing Data Abstract servers (written in .NET or Delphi) to share a common back-end between your Windows, Mac and iPhone users, while still providing a fully native Cocoa or Cocoa Touch-based user experience for the latter two. And the new Relativity server, available since the ”Spring 2010” release, allows all Data Abstract users to deploy no-code middle-tier servers on any server platform, including Mac OS X, without requiring a separate copy of DA/.NET or DA/Delphi.
Fitting in with general Cocoa development paradigms, Data Abstract for Xcode is fully designed for asynchronous (and optionally synchronous) data access, making it easy to write applications that keep a responsive user interface while data access and communication with the middle-tier server is under way. It is ready for and takes advantage of Snow Leopard and iOS4 technologies such as Grand Central Dispatch, Blocks and Backgrounding.
Because the Data Abstract library is single-sourced and virtually identical for Mac OS X and iOS, you can share a lot of the data access code in your own applications between both platforms. This means you can concentrate on providing specialized user interfaces for the different types of devices, but share a lot of the client code that works behind the scenes.
For example, our internal “Bugs” application, shown below, is made up of largely the same code base for both iPhone/iPad and Mac (and communicates with the same Mono-based middle-tier server running on an Xserve):
Relativity ServerData Abstract for Xcode focuses on the creation of client applications, because – frankly – most companies do not run their servers on Xserves with Mac OS X but want the flexibility of deployment to Linux and Windows servers, as well. But – in addition to of course being able to talk to servers created with its sister products for .NET or Delphi – Data Abstract for Xcode comes with Relativity Server, our “middle tier in a box”.
Relativity Server is a pre-compiled middle-tier server solution based on Data Abstract technology that can be run on any of our supported server platforms, including Linux, Windows and, of course, Mac OS X. With Relativty, you don't need to build your own middle-tier server, but can concentrate on defining your schema and business rules, which Relativity will host, and on creating great client applications for Mac or iOS.
And Relativity Server integrates deeply with the new Schema Modeler for Mac (described below) to allow you to model your data access against a wide variety of database types, right from the comfort of your Mac.
Read more about Relativity Server
The new Schema Modeler with integrated Server Explorer is your central hub for both modeling your data access layer within Relativity Server as well as keeping track of and maintaining all the servers (Relativity or otherwise) that you work with.
Server Explorer detects all the Relativity Servers on your network and allows you to register remote manually, and then let's you manage them in a consistent manner. You can define your domains and schemas, set up new database connections, browse preview data, and test DA SQL queries. And, of course, it let's you open the individual schemas and work with them in Schema Modeler.
Schema Modeler itself provides a document-centric view onto the schemas contained in your Relativity Server domains. You can open schemas right from the server, work with them to expose new tables to your clients, define business rules scripts in JavaScript, change data abstraction and so forth, and then save your schemas right back into the server, where they will be instantly available to clients. A parallel Connections window gives you a live view of the tables, views and procedures defined in your back-end database(s), allowing you to use drag-and-drop to easily add new objects to the schema.
All meta-data access for the modeling is done through Relativity Server, so there's no need to worry about setting up vendor-specific database drivers on our development machine; in fact, you don't even need to open ports in the firewall to access the back-end database server, because all communication happens securely through Relativity.
Data Abstract for Xcode provides tight integration with Cocoa technologies such as Key-Value-Coding and Key-Value-Observing (KVC/KVO), Cocoa Bindings, Predicates and even the NSPredicateEditor, which makes it easy for your application and for your users to filter data.
Functionality is provided to automatically populate a predicate editor, like the one shown below, with meta data from data tables, whether to use the resulting predicate to filter a local dataset, or generate a DA SQL statement to download a subset of data from the server. This includes full support for lookup and calculated fields.
Live == 1 AND TargetReleaseID == 6 AND ProjectID == 4«
And There's More...
The above is only a brief glimpse at some of the unique features in Data Abstract.You can find more information The above is only a brief glimpse at some of the unique features in Data Abstract.You can find more information in our extensive online wiki, with documentation, articles, class references and discussion of the various aspects of the product.