On the FAQ page of Schema.org you can find some information:
Q: How does schema.org relate to Facebook Open Graph?
Facebook Open Graph serves its purpose well, but it doesn't provide the detailed information search engines need to improve the user experience. A single web page may have many components, and it may talk about more than one thing. If search engines understand the various components of a page, we can improve our presentation of the data. Even if you mark up your content using the Facebook Open Graph protocol, schema.org provides a mechanism for providing more detail about particular entities on the page.
For example, a page about a band could include any or all of the following:
- A list of albums
A price for each album
A list of songs for each album, along with a link to hear samples of each song
A list of upcoming shows
Bios of the band members
They can both be used safely together. Currently the two efforts use different syntaxes to encode data in HTML (W3C RDFa or Microdata), but there are active discussions at W3C towards eventual convergence of those designs.
Open graph is more if you have one object(book,movie, ...) on one page.
schema.org allows multiple objects on a page.
Open graph allows perhaps easier sharing on social media (facebook, twitter, ...)
There is no harm in combining them both. I believe most search engines and Social media sites,
read and use both.