Turkey

From Rootsweb
Jump to: navigation, search

Template:Two other uses Template:Pp-move-indefTemplate:Pp-vandalism Template:Use British (Oxford) English Template:Use dmy datesTemplate:Infobox country

Turkey (Template:Lang-tr), officially the Republic of Turkey Template:Nowrap, is a contiguous transcontinental country, located mostly on Anatolia in Western Asia, and on East Thrace in Southeastern Europe. Turkey is bordered by eight countries: Bulgaria to the northwest; Greece to the west; Georgia to the northeast; Armenia, Iran and the Azerbaijani exclave of Nakhchivan to the east; and Iraq and Syria to the southeast. The Mediterranean Sea is to the south; the Aegean Sea is to the west; and the Black Sea is to the north. The Sea of Marmara, the Bosphorus and the Dardanelles (which together form the Turkish Straits) demarcate the boundary between Thrace and Anatolia; they also separate Europe and Asia.<ref name="NatlGeoAtlas">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main() "Europe" (pp. 68'69); "Asia" (pp. 90'91): "A commonly accepted division between Asia and Europe ... is formed by the Ural Mountains, Ural River, Caspian Sea, Caucasus Mountains, and the Black Sea with its outlets, the Bosporus and Dardanelles."</ref> Turkey's location at the crossroads of Europe and Asia makes it a country of significant geostrategic importance.<ref name="Atatürk">
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed<ref name="Ottoman_Turkey">
        3. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref><ref name="Stratfor">Template:Cite web</ref>

Turkey has been inhabited since the paleolithic age,<ref>Template:Cite journal</ref> including various Ancient Anatolian civilizations and Thracian peoples.<ref name="Howard">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref><ref name="SteadmanMcMahon2011">
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref><ref name="MET">Template:Cite journal</ref> After Alexander the Great's conquest, the area was Hellenized, which continued with the Roman rule and the transition into the Byzantine Empire.<ref name="SteadmanMcMahon2011"/><ref name="FreedmanMyers2000">
        3. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> The Seljuk Turks began migrating into the area in the 11th century, starting the process of Turkification, which was greatly accelerated by the Seljuk victory over the Byzantines at the Battle of Manzikert in 1071.<ref>Template:Cite web</ref> The Seljuk Sultanate of Rûm ruled Anatolia until the Mongol invasion in 1243, upon which it disintegrated into several small Turkish beyliks.

Turkey was a major power in Europe during the early modern period. Starting from the late 13th century, the Ottoman beylik united Anatolia and created an empire encompassing much of Southeastern Europe, Western Asia and North Africa. After the Ottoman Empire collapsed following its defeat in World War I, parts of it were occupied by the victorious Allies. The Turkish War of Independence, initiated by Mustafa Kemal Atatürk and his colleagues, resulted in the establishment of the modern Republic of Turkey in 1923, with Atatürk as its first president.

Turkey is a democratic, secular, unitary, constitutional republic with a diverse cultural heritage. The country's official language is Turkish, a Turkic language spoken natively by approximately 85% of the population.<ref name=milliyet-languages>Template:Cite web</ref> Turks constitute 70% to 75% of the population. Minorities include Kurds (18%) and others (7'12%).<ref name="cia"/> The vast majority of the population is Muslim. Turkey is a member of the Council of Europe, NATO, OECD, OSCE and the G-20 major economies. Turkey began full membership negotiations with the European Union in 2005, having been an associate member of the European Economic Community since 1963 and having joined the EU Customs Union in 1995. Turkey is also a member of the Turkic Council, Joint Administration of Turkic Arts and Culture, Organisation of Islamic Cooperation and the Economic Cooperation Organisation. Turkey's growing economy and diplomatic initiatives have led to its recognition as a regional power.<ref name="Stratfor"/><ref name="Heptagon">Template:Cite web</ref><ref name="Eurasiareview">Template:Cite web</ref>

Etymology

Template:Main The name of Turkey (Turkish: Türkiye) can be divided into two components: the ethnonym Türk and the abstract suffix 'iye meaning "owner", "land of" or "related to" (originally derived from the Greek and Latin suffixes ia in Tourkia (Τουρκία) and Turchia; and later from the corresponding Arabic suffix iyya in Turkiyya (تركيا).)Template:Citation needed The first recorded use of the term "Türk" or "Türük" as an autonym is contained in the Old Turkic inscriptions of the Göktürks (Celestial Turks) of Central Asia (c. 8th century).<ref>Scharlipp, Wolfgang (2000). An Introduction to the Old Turkish Runic Inscriptions. Verlag auf dem Ruffel., Engelschoff. ISBN 3-933847-00-1, 9783933847003.</ref>

The English name Turkey first appeared in the late 14th century, and is derived from Medieval Latin Turchia.<ref name="TurkEtymology">Template:Cite web</ref>

The Greek cognate of this name, Tourkia (Template:Lang-el) was used by the Byzantine emperor and scholar Constantine VII Porphyrogenitus in his book De Administrando Imperio,<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main() According to Constantine Porphyrogenitus, writing in his De Administrando Imperio (ca. 950 AD) "Patzinakia, the Pecheneg realm, stretches west as far as the Siret River (or even the Eastern Carpathian Mountains), and is four days distant from Tourkia (i.e. Hungary)."</ref><ref name="PrinzingSalamon1999">
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> though in his use, "Turks" always referred to Magyars.<ref name="Howorth2008">
        3. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Similarly, the medieval Khazar Empire, a Turkic state on the northern shores of the Black and Caspian seas, was referred to as Tourkia (Land of the Turks) in Byzantine sources.<ref>Template:Cite web</ref>

The Ottoman Empire was commonly referred to as Turkey or the Turkish Empire among its contemporaries.

History

Template:Main

Prehistory of Anatolia and Eastern Thrace

Template:Main Template:See also

File:Hattusa.liongate.jpg
The Lion Gate at Hattusa, capital of the Hittite Empire. The city's history dates back to before 2000 BC.

The Anatolian peninsula, comprising most of modern Turkey, is one of the oldest permanently settled regions in the world. Various Ancient Anatolian populations have lived in Anatolia, beginning with the Neolithic period until conquest of Alexander the Great.<ref name="SteadmanMcMahon2011"/> Many of these peoples spoke the Anatolian languages, a branch of the larger Indo-European language family.<ref name="UCLA">Template:Cite web</ref> In fact, given the antiquity of the Indo-European Hittite and Luwian languages, some scholars have proposed Anatolia as the hypothetical center from which the Indo-European languages radiated.<ref name="AnatoliaIndoEuropean">Template:Cite journal</ref> European part of Turkey, called Eastern Thrace, has also been inhabited since forty thousand years ago, and entered Neolithic by about 6000 B.C. with its inhabitants starting the practice of agriculture.<ref name="MET"/>

Göbekli Tepe is the site of the oldest known man-made religious structure, a temple dating to 10,000 BC,<ref name="ArchMag">Template:Cite web</ref> while Çatalhöyük is a very large Neolithic and Chalcolithic settlement in southern Anatolia, which existed from approximately 7500 BCE to 5700 BCE. It is the largest and best-preserved Neolithic site found to date and in July 2012 was inscribed as a UNESCO World Heritage Site.<ref>Template:Cite web</ref> The settlement of Troy started in the Neolithic Age and continued into the Iron Age.

The earliest recorded inhabitants of Anatolia were the Hattians and Hurrians, non-Indo-European peoples who inhabited central and eastern Anatolia, respectively, as early as ca. 2300 BC. Indo-European Hittites came to Anatolia and gradually absorbed the Hattians and Hurrians ca. 2000'1700 BC. The first major empire in the area was founded by the Hittites, from the eighteenth through the 13th century BC. The Assyrians conquered and settled parts of southeastern Turkey as early as 1950 BC until the year 612 BC.<ref>Template:Cite web</ref><ref>Template:Cite web</ref>

Following the collapse of the Hittite empire c. 1180 BC, the Phrygians, an Indo-European people, achieved ascendancy in Anatolia until their kingdom was destroyed by the Cimmerians in the 7th century BC.<ref name="TroyHittiteEmpirePhrygians">Template:Cite web</ref> The most powerful of Phrygia's successor states were Lydia, Caria and Lycia.

Antiquity and Byzantine Period

Template:Main Template:See also

File:Turkey-3019 - Hagia Sophia (2216460729).jpg
Originally a church, later a mosque, and now a museum, the Hagia Sophia was built by the Byzantines in the 6th century.

Starting around 1200 BC, the coast of Anatolia was heavily settled by Aeolian and Ionian Greeks. Numerous important cities were founded by these colonists, such as Miletus, Ephesus, Smyrna and Byzantium, the latter founded by Greek colonists from Megara in 657 BC. The first state that was called Armenia by neighbouring peoples was the state of the Armenian Orontid dynasty, which included parts of eastern Turkey beginning in the 6th century BC. In Northwest Turkey, the most significant tribal group in Thrace was the Odyrisians, founded by Teres I.<ref name="LewisBoardman1994">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>

Anatolia was conquered by the Persian Achaemenid Empire during the 6th and 5th centuries BC and later fell to Alexander the Great in 334 BC,<ref name="PersiansInAsiaMinor">Template:Cite web</ref> which led to increasing cultural homogeneity and Hellenization in the area.<ref name="SteadmanMcMahon2011"/> Following Alexander's death in 323 BC, Anatolia was subsequently divided into a number of small Hellenistic kingdoms, all of which became part of the Roman Republic by the mid-1st century BC.<ref name="AlexanderToRome">Template:Cite web</ref> The process of Hellenization that began with Alexander's conquest accelerated under Roman rule, so that by the early centuries AD the local Anatolian languages and cultures has become extinct, replaced by Greek.<ref name="FreedmanMyers2000"/><ref name="Hout2011">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>

In 324, Constantine I chose Byzantium to be the new capital of the Roman Empire, renaming it New Rome. Following the death of Theodosius I in 395 and the permanent division of the Roman Empire between his two sons, Constantinople became the capital of the Byzantine Empire, which would rule most of the territory of Turkey until the Late Middle Ages.<ref>Template:Cite web</ref> Template:Anchor

The Seljuks and the Ottoman Empire

Template:Main Template:See also

{{#if:Topkapı - 01.jpgDolmabahçe Palace.JPG|

{{#if:|

{{{header}}}

}}{{#if:Topkapı - 01.jpg|

{{#if:|

{{{caption1}}}

}}

}}{{#if:Dolmabahçe Palace.JPG|

{{#if:Topkapı and Dolmabahçe palaces were the primary residences of the Ottoman Sultans between 1465 to 1856 and 1856 to 1922, respectively.|
Topkapı and Dolmabahçe palaces were the primary residences of the Ottoman Sultans between 1465 to 1856 and 1856 to 1922, respectively.

}}

}}{{#if:|

[[file:{{{image3}}}|{{#if: | {{{width}}} | {{{width3}}} }}px{{#ifeq::|:|||link={{{link3}}}}}|alt=|]]
{{#if:|
{{{caption3}}}

}}

}}{{#if:|

[[file:{{{image4}}}|{{#if: | {{{width}}} | {{{width4}}} }}px{{#ifeq::|:|||link={{{link4}}}}}|alt=|]]
{{#if:|
{{{caption4}}}

}}

}}{{#if:|

[[file:{{{image5}}}|{{#if: | {{{width}}} | {{{width5}}} }}px{{#ifeq::|:|||link={{{link5}}}}}|alt=|]]
{{#if:|
{{{caption5}}}

}}

}}{{#if:|

[[file:{{{image6}}}|{{#if: | {{{width}}} | {{{width6}}} }}px{{#ifeq::|:|||link={{{link6}}}}}|alt=|]]
{{#if:|
{{{caption6}}}

}}

}}{{#if:|

[[file:{{{image7}}}|{{#if: | {{{width}}} | {{{width7}}} }}px{{#ifeq::|:|||link={{{link7}}}}}|alt=|]]
{{#if:|
{{{caption7}}}

}}

}}{{#if:|

[[file:{{{image8}}}|{{#if: | {{{width}}} | {{{width8}}} }}px{{#ifeq::|:|||link={{{link8}}}}}|alt=|]]
{{#if:|
{{{caption8}}}

}}

}}{{#if:|

[[file:{{{image9}}}|{{#if: | {{{width}}} | {{{width9}}} }}px{{#ifeq::|:|||link={{{link9}}}}}|alt=|]]
{{#if:|
{{{caption9}}}

}}

}}{{#if:|

[[file:{{{image10}}}|{{#if: | {{{width}}} | {{{width10}}} }}px{{#ifeq::|:|||link={{{link10}}}}}|alt=|]]
{{#if:|
{{{caption10}}}

}}

}}{{#if:|

{{{footer}}}

}}

The House of Seljuk was a branch of the Kınık Oğuz Turks who resided on the periphery of the Muslim world, in the Yabghu Khaganate of the Oğuz confederacy, to the north of the Caspian and Aral Seas, in the 9th century.<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed In the 10th century, the Seljuks started migrating from their ancestral homeland into Persia, which became the administrative core of the Great Seljuk Empire.

In the latter half of the 11th century, the Seljuks began penetrating into the eastern regions of Anatolia. In 1071, the Seljuk Turks defeated the Byzantines at the Battle of Manzikert, starting Turkification of the area; the Turkish language and Islam were introduced to Anatolia and gradually spread over the region and the slow transition from a predominantly Christian and Greek-speaking Anatolia to a predominantly Muslim and Turkish-speaking one was underway.<ref name="Abazov2009">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed

In 1243, the Seljuk armies were defeated by the Mongols, causing the Seljuk Empire's power to slowly disintegrate. In its wake, one of the Turkish principalities governed by Osman I would, over the next 200 years, evolve into the Ottoman Empire, expanding throughout Anatolia, the Balkans, the Levant and North Africa.<ref name="Ottomans">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed In 1453, the Ottomans completed their conquest of the Byzantine Empire by capturing its capital, Constantinople.

In 1514, Sultan Selim I (1512'1520) successfully expanded the Empire's southern and eastern borders by defeating Shah Ismail I of the Safavid dynasty in the Battle of Chaldiran. In 1517, Selim I expanded Ottoman rule into Algeria and Egypt, and created a naval presence in the Red Sea. Subsequently, a competition started between the Ottoman and Portuguese empires to become the dominant sea power in the Indian Ocean, with numerous naval battles in the Red Sea, the Arabian Sea and the Persian Gulf. The Portuguese presence in the Indian Ocean was perceived as a threat for the Ottoman monopoly over the ancient trading routes between East Asia and Western Europe (later collectively named the Silk Road). This important monopoly was increasingly compromised following the discovery of the Cape of Good Hope by Portuguese explorer Bartolomeu Dias in 1488, which had a considerable impact on the Ottoman economy.

The Ottoman Empire's power and prestige peaked in the 16th and 17th centuries, particularly during the reign of Suleiman the Magnificent. The empire was often at odds with the Holy Roman Empire in its steady advance towards Central Europe through the Balkans and the southern part of the Polish-Lithuanian Commonwealth.<ref name=autogenerated1>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> At sea, the Ottoman Navy contended with several Holy Leagues (composed primarily of Habsburg Spain, the Republic of Genoa, the Republic of Venice, the Knights of St. John, the Papal States, the Grand Duchy of Tuscany and the Duchy of Savoy) for control of the Mediterranean Sea. In the east, the Ottomans were occasionally at war with Safavid Persia over conflicts stemming from territorial disputes or religious differences between the 16th and 18th centuries.<ref>
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>

From the beginning of the 19th century onwards, the Ottoman Empire began to decline. As it gradually shrank in size, military power and wealth, many Balkan Muslims migrated to the Empire's heartland in Anatolia,<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Failed verification<ref name="Illinois2009">
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> along with the Circassians fleeing the Russian conquest of the Caucasus. The decline of the Ottoman Empire led to a rise in nationalist sentiment among the various subject peoples, leading to increased ethnic tensions which occasionally burst into violence, such as the Hamidian massacres.

The Ottoman Empire entered World War I on the side of the Central Powers and was ultimately defeated. During the war, an estimated 1.5 million Armenians were deported and exterminated in the Armenian Genocide.<ref>Template:Cite web</ref><ref>Totten, Samuel, Paul Robert Bartrop, Steven L. Jacobs (eds.) Dictionary of Genocide. Greenwood Publishing Group, 2008, p. 19. ISBN 0-313-34642-9.</ref> The Turkish government denies that there was an Armenian Genocide and claims that Armenians were only relocated from the eastern war zone.<ref name="Sr.2010">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Large-scale massacres were also committed against the empire's other minority groups such as the Greeks and Assyrians.<ref name="Bloxham2005">
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref><ref name=Levene>Template:Cite journal</ref><ref name="Ferguson">
        3. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>

Following the Armistice of Mudros on 30 October 1918, the victorious Allied Powers sought to partition the Ottoman state through the 1920 Treaty of Sèvres.<ref name="Ottomans" />Template:Page needed

Republic of Turkey

Template:Main

File:MustafaKemalAtaturk.jpg
Mustafa Kemal Atatürk, founder and first President of the Republic of Turkey.

The occupation of Constantinople and Smyrna by the Allies in the aftermath of World War I prompted the establishment of the Turkish National Movement.<ref name="Ottoman_Turkey" />Template:Failed verification Under the leadership of Mustafa Kemal Pasha, a military commander who had distinguished himself during the Battle of Gallipoli, the Turkish War of Independence was waged with the aim of revoking the terms of the Treaty of Sèvres.<ref name="Atatürk"/>

By 18 September 1922, the occupying armies were expelled, and the Ankara-based Turkish regime, which declared itself the legitimate government of the country in April 1920, started to formalize the legal transition from the old Ottoman into the new Republican political system. On 1 November, the newly founded parliament formally abolished the Sultanate, thus ending 623 years of Ottoman rule. The Treaty of Lausanne of 24 July 1923 led to the international recognition of the sovereignty of the newly formed "Republic of Turkey" as the continuing state of the Ottoman Empire, and the republic was officially proclaimed on 29 October 1923 in Ankara, the country's new capital.<ref name="Ottoman_Turkey" />Template:Page needed The Lausanne treaty stipulated a population exchange between Greece and Turkey, whereby 1.1 million Greeks left Turkey for Greece in exchange for 380,000 Muslims transferred from Greece to Turkey.<ref name="Clogg">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>

Mustafa Kemal became the republic's first President and subsequently introduced many radical reforms with the aim of transforming old Ottoman-Turkish state into a new secular republic.<ref name="BoweringCrone2012">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> With the Surname Law of 1934, the Turkish Parliament bestowed upon Mustafa Kemal the honorific surname "Atatürk" (Father of the Turks.)<ref name="Atatürk" />

Turkey remained neutral during most of World War II, but entered the closing stages of the war on the side of the Allies on 23 February 1945. On 26 June 1945, Turkey became a charter member of the United Nations.<ref name="Turkey_UN">Template:Cite web</ref> Difficulties faced by Greece after the war in quelling a communist rebellion, along with demands by the Soviet Union for military bases in the Turkish Straits, prompted the United States to declare the Truman Doctrine in 1947. The doctrine enunciated American intentions to guarantee the security of Turkey and Greece, and resulted in large-scale U.S. military and economic support.<ref name="Truman Doctrine">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Both countries were included in the Marshall Plan and OEEC for rebuilding European economies in 1948, and subsequently became founding members of the OECD in 1961.

After participating with the United Nations forces in the Korean War, Turkey joined NATO in 1952, becoming a bulwark against Soviet expansion into the Mediterranean. Following a decade of Cypriot intercommunal violence and the coup in Cyprus on 15 July 1974 staged by the EOKA B paramilitary organization, which overthrew President Makarios and installed the pro-Enosis (union with Greece) Nikos Sampson as dictator, Turkey invaded Cyprus on 20 July 1974.<ref name="Uslu2003">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Nine years later the Turkish Republic of Northern Cyprus, which is recognized only by Turkey, was established.<ref>Template:Cite news</ref>

The single-party period ended in 1945. It was followed by a tumultuous transition to multiparty democracy over the next few decades, which was interrupted by military coups d'état in 1960, 1971, 1980 and 1997.<ref name="TRPoliticsandMilitary">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed In 1984, the PKK, a Kurdish separatist group, began an insurgency campaign against the Turkish government, which to date has claimed over 40,000 lives;<ref>Template:Cite news</ref> however, a peace process is currently ongoing.<ref>Template:Cite news</ref><ref>Template:Cite news</ref> Since the liberalization of the Turkish economy during the 1980s, the country has enjoyed stronger economic growth and greater political stability.<ref name="80sLiberalization" />Template:Page needed In 2013, widespread protests erupted in many Turkish provinces, sparked by a plan to demolish Gezi Park but growing into general anti-government dissent.<ref>Template:Cite news</ref>

Politics

Template:Main

150px 125px
Abdullah Gül
President since 2007
Recep Tayyip Erdoğan
Prime Minister since 2003

Turkey is a parliamentary representative democracy. Since its foundation as a republic in 1923, Turkey has developed a strong tradition of secularism.<ref name="TR_Secularism">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Turkey's constitution governs the legal framework of the country. It sets out the main principles of government and establishes Turkey as a unitary centralized state. The President of the Republic is the head of state and has a largely ceremonial role. The president is elected for a seven-year term by direct elections. Abdullah Gül was elected as president on 28 August 2007, by a popular parliament round of votes.<ref>Template:Cite news</ref>

Executive power is exercised by the Prime Minister and the Council of Ministers which make up the government, while the legislative power is vested in the unicameral parliament, the Grand National Assembly of Turkey. The judiciary is independent of the executive and the legislature, and the Constitutional Court is charged with ruling on the conformity of laws and decrees with the constitution. The Council of State is the tribunal of last resort for administrative cases, and the High Court of Appeals for all others.<ref name="TR_Constit">Template:Cite web</ref>

The prime minister is elected by the parliament through a vote of confidence in the government and is most often the head of the party having the most seats in parliament. The current prime minister is the former mayor of İstanbul, Recep Tayyip Erdoğan, whose conservative Justice and Development Party was elected for a third consecutive time in 2011 general elections.<ref>Template:Cite news</ref> Although the ministers do not have to be members of the parliament, ministers with parliament membership are common in Turkish politics.

Universal suffrage for both sexes has been applied throughout Turkey since 1933, and every Turkish citizen who has turned 18 years of age has the right to vote. There are 550 members of parliament who are elected for a four-year term by a party-list proportional representation system from 85 electoral districts.

In 2004, there were 50 registered political parties in the country.<ref name="BYEGM_TrPolSys">Template:Cite web</ref> The Constitutional Court can strip the public financing of political parties that it deems anti-secular or separatist, or ban their existence altogether.<ref>Template:Cite news</ref><ref>Template:Cite news</ref> The electoral threshold is 10% of the votes.<ref name="BYEGM_TrPolSys" />

Supporters of Atatürk's reforms are called Kemalists, as distinguished from Islamists, representing two extremes on a continuum of beliefs about the proper role of religion in public life.<ref name="FleetFaroqhi2008p357">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> The Kemalist position generally combines a kind of authoritarian democracy with a laicist constitution and westernised secular lifestyle, while supporting state intervention in the economy, education and other public services.<ref name="FleetFaroqhi2008p357"/> Since the 1980s, a rise in income inequality and class distinction has given rise to Islamic populism, a movement that in theory supports obligation to authority, communal solidarity and social justice, though it is contested what it entails in practice.<ref name="FleetFaroqhi2008p357"/>

Human rights in Turkey have been the subject of some controversy and international condemnation. Between 1998 and 2008 the European Court of Human Rights made more than 1,600 judgements against Turkey for human rights violations, particularly regarding the right to life, and freedom from torture. Other issues, such as Kurdish rights, women's rights, and press freedom, have also attracted controversy. Turkey's human rights record continues to be a significant obstacle to future membership of the EU.<ref>Template:Cite web</ref> According to the Committee to Protect Journalists, the AKP government has waged one of the world's biggest crackdowns on press freedoms.<ref name=CPJ>Template:Cite web</ref> A large number of journalists have been arrested using charges of "terrorism" and "anti-state activities" such as the Ergenekon and Balyoz cases, while thousands have been investigated on charges such as "denigrating Turkishness" or "insulting Islam" in an effort to sow self-censorship.<ref name=CPJ/> In 2012, the CPJ identified 76 jailed journalists in Turkey, including 61 directly held for their published work, more than in Iran, Eritrea or China.<ref name=CPJ/> A former U.S. State Department spokesman, Philip J. Crowley, said that the United States had "broad concerns about trends involving intimidation of journalists in Turkey."<ref>Template:Cite web</ref>

Foreign relations

Template:Main

File:2010 G-20 Seoul summit.jpg
Turkey is a founding member of the OECD and the G-20 major economies.

Turkey is a founding member of the United Nations (1945), the OECD (1961), the OIC (1969), the OSCE (1973), the ECO (1985), the BSEC (1992), the D-8 (1997) and the G-20 major economies (1999). On 17 October 2008, Turkey was elected as a non-permanent member of the United Nations Security Council.<ref name="Hürriyet UN Security">Template:Cite web</ref> Turkey's membership of the council effectively began on 1 January 2009.<ref name="Hürriyet UN Security"/> Turkey had previously been a member of the U.N. Security Council in 1951'1952, 1954'1955 and 1961.<ref name="Hürriyet UN Security"/>

In line with its traditional Western orientation, relations with Europe have always been a central part of Turkish foreign policy. Turkey became a founding member of the Council of Europe in 1949, applied for associate membership of the EEC (predecessor of the European Union) in 1959 and became an associate member in 1963. After decades of political negotiations, Turkey applied for full membership of the EEC in 1987, became an associate member of the Western European Union in 1992, joined the EU Customs Union in 1995 and has been in formal accession negotiations with the EU since 2005.<ref name="TR_EUChrono">Template:Cite web</ref> Today, EU membership is considered as a state policy and a strategic target by Turkey.<ref>Template:Cite web</ref>

Turkey's support for Northern Cyprus in the Cyprus dispute complicates Turkey's relations with both NATO and the EU, and remains a major stumbling block to Turkey's EU accession bid.<ref name="Mardell">Template:Cite news</ref>

The other defining aspect of Turkey's foreign relations has been its ties with the United States. Based on the common threat posed by the Soviet Union, Turkey joined NATO in 1952, ensuring close bilateral relations with Washington throughout the Cold War. In the post'Cold War environment, Turkey's geostrategic importance shifted towards its proximity to the Middle East, the Caucasus and the Balkans. In return, Turkey has benefited from the United States' political, economic and diplomatic support, including in key issues such as the country's bid to join the European Union.

The independence of the Turkic states of the Soviet Union in 1991, with which Turkey shares a common cultural and linguistic heritage, allowed Turkey to extend its economic and political relations deep into Central Asia,<ref name="Bal2004">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> thus enabling the completion of a multi-billion-dollar oil and natural gas pipeline from Baku in Azerbaijan to the port of Ceyhan in Turkey. The Baku'Tbilisi'Ceyhan pipeline forms part of Turkey's foreign policy strategy to become an energy conduit to the West. However, Turkey's border with Armenia, a state in the Caucasus, remains closed following Armenia's occupation of Azerbaijani territory during the Nagorno-Karabakh War.<ref>Template:Cite web</ref> Under the AK Party government, Turkey's influence has grown in the Middle East based on the strategic depth doctrine, also called Neo-Ottomanism.<ref>Template:Cite web</ref><ref>
        2. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> This policy has led to tensions with major Arab countries such as Turkey's neighbour Syria following the Syrian civil war and with Egypt following the ouster of President Mohamed Morsi.<ref>Template:Cite web</ref><ref>Template:Cite web</ref>

Military

Template:Main

File:NATO Ministers of Defense and of Foreign Affairs meet at NATO headquarters in Brussels 2010.jpg
The Turkish Armed Forces collectively rank as the second largest standing military force in NATO, after the U.S. Armed Forces. Turkey joined the alliance in 1952.

The Turkish Armed Forces consists of the Army, the Navy and the Air Force. The Gendarmerie and the Coast Guard operate as parts of the Ministry of Internal Affairs in peacetime, although they are subordinated to the Army and Navy Commands respectively in wartime, during which they have both internal law enforcement and military functions.<ref name="TSK_Organisation">Template:Cite web</ref>

The Chief of the General Staff is appointed by the President and is responsible to the Prime Minister. The Council of Ministers is responsible to the Parliament for matters of national security and the adequate preparation of the armed forces to defend the country. However, the authority to declare war and to deploy the Turkish Armed Forces to foreign countries or to allow foreign armed forces to be stationed in Turkey rests solely with the Parliament.<ref name="TSK_Organisation" /> The actual Commander of the Armed Forces is the Chief of the General Staff General Necdet Özel since 4 August 2011.<ref>Template:Cite web</ref>

The Turkish Armed Forces is the second largest standing armed force in NATO, after the US Armed Forces, with an estimated strength of 495,000 deployable forces, according to a 2011 NATO estimate.<ref>Template:Cite web</ref> Turkey is one of five NATO member states which are part of the nuclear sharing policy of the alliance, together with Belgium, Germany, Italy, and the Netherlands.<ref>Template:Cite web</ref> A total of 90 B61 nuclear bombs are hosted at the Incirlik Air Base, 40 of which are allocated for use by the Turkish Air Force in case of a nuclear conflict, but their use requires the approval of NATO.<ref>Template:Cite web</ref>

Every fit male Turkish citizen otherwise not barred is required to serve in the military for a period ranging from three weeks to a year, dependent on education and job location.<ref>Template:Cite web</ref> Turkey does not recognise conscientious objection and does not offer a civilian alternative to military service.<ref>Template:Cite web</ref>

In 1998, Turkey announced a modernisation programme worth US$160 billion over a twenty-year period in various projects including tanks, fighter jets, helicopters, submarines, warships and assault rifles.<ref>Economist Intelligence Unit:Turkey, p.22 (2005)</ref> Turkey is a Level 3 contributor to the Joint Strike Fighter (JSF) programme.<ref>Template:Cite web</ref> According to SIPRI, Turkish military expenditures in 2012 amounted to $18.2 billion, the 15th highest in the world, representing 2.3% of GDP, down from 3.4% in 2003.<ref name=sipri>Template:Cite web</ref>

Turkey has maintained forces in international missions under the United Nations and NATO since 1950, including peacekeeping missions in Somalia and former Yugoslavia, and support to coalition forces in the First Gulf War. Turkey maintains 36,000 troops in Northern Cyprus, though their presence is controversial.<ref name="Richmond1998">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Turkey has had troops deployed in Afghanistan as part of the United States stabilization force and the UN-authorized, NATO-commanded International Security Assistance Force (ISAF) since 2001.<ref>Template:Cite webTemplate:Dead link</ref> Since 2003, Turkey contributes military personnel to Eurocorps and takes part in the EU Battlegroups.<ref name="Enter the EU Battle Groups">Template:Cite web</ref> Since 2006, Turkish troops are also part of an expanded United Nations Interim Force in Lebanon (UNIFIL).<ref>Template:Cite news</ref>

Administrative divisions

Template:Further Turkey is subdivided into 81 provinces for administrative purposes. Each province is divided into districts, for a total of 923 districts.

Template:Turkey Labelled Map

Geography

Template:Main

File:Turkey topo.jpg
Topographic map of Turkey

Turkey is a transcontinental<ref name="Immerfall2009">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Eurasian country. Asian Turkey (made up largely of Anatolia), which includes 97% of the country, is separated from European Turkey by the Bosphorus, the Sea of Marmara, and the Dardanelles. European Turkey comprises 3% of the country.<ref>Template:Cite web</ref>

The territory of Turkey is more than 1,600 kilometres (1,000 mi) long and 800 km (500 mi) wide, with a roughly rectangular shape.<ref name="USLC_TRGeo">Template:Cite web</ref> It lies between latitudes 35° and 43° N, and longitudes 25° and 45° E. Turkey's area, including lakes, occupies 783,562<ref>Template:Cite web</ref> square kilometres (300,948 sq mi), of which 755,688 square kilometres (291,773 sq mi) are in Southwest Asia and 23,764 square kilometres (9,174 sq mi) in Europe.<ref name="USLC_TRGeo" /> Turkey is the world's 37th-largest country in terms of area. The country is encircled by seas on three sides: the Aegean Sea to the west, the Black Sea to the north and the Mediterranean to the south. Turkey also contains the Sea of Marmara in the northwest.<ref name="TRGeo_TRMinistryTourism" />

The European section of Turkey, East Thrace, forms the borders of Turkey with Greece and Bulgaria. The Asian part of the country, Anatolia, consists of a high central plateau with narrow coastal plains, between the Köroğlu and Pontic mountain ranges to the north and the Taurus Mountains to the south. Eastern Turkey has a more mountainous landscape and is home to the sources of rivers such as the Euphrates, Tigris and Aras, and contains Mount Ararat, Turkey's highest point at 5,137 metres (16,854 ft),<ref name="TRGeo_TRMinistryTourism" /><ref>Template:Cite web</ref> and Lake Van, the largest lake in the country.

Turkey is divided into seven census regions: Marmara, Aegean, Black Sea, Central Anatolia, Eastern Anatolia, Southeastern Anatolia and the Mediterranean. The uneven north Anatolian terrain running along the Black Sea resembles a long, narrow belt. This region comprises approximately one-sixth of Turkey's total land area. As a general trend, the inland Anatolian plateau becomes increasingly rugged as it progresses eastward.<ref name="TRGeo_TRMinistryTourism">Template:Cite web</ref>

Turkey's varied landscapes are the product of complex earth movements that have shaped the region over thousands of years and still manifest themselves in fairly frequent earthquakes and occasional volcanic eruptions. The Bosphorus and the Dardanelles owe their existence to the fault lines running through Turkey that led to the creation of the Black Sea. There is an earthquake fault line across the north of the country from west to east, along which a major earthquake occurred in 1999.<ref>Template:Cite webTemplate:Dead link</ref>

Biodiversity

Template:Main Template:See also

Turkey's extraordinary ecosystem and habitat diversity has produced considerable species diversity.<ref>Template:Cite web</ref> Anatolia is the homeland of many plants that have been cultivated for food since the advent of agriculture, and the wild ancestors of many plants that now provide staples for mankind still grow in Turkey. The diversity of Turkey's fauna is even greater than that of its flora: While the number of animal species throughout Europe as a whole reach around 60,000, in Turkey they number over 80,000 (with subspecies, number rises to over 100,000.)

The Northern Anatolian conifer and deciduous forests is an ecoregion which covers most of the Pontic Mountains in northern Turkey, while the Caucasus mixed forests extend across the eastern end of the range. The region is home to Eurasian wildlife such as the Eurasian Sparrowhawk, Golden Eagle, Eastern Imperial Eagle, Lesser Spotted Eagle, Caucasian Black Grouse, Red-fronted Serin, and Wallcreeper.<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> The narrow coastal strip between the Pontic Mountains and the Black Sea is home to the Euxine-Colchic deciduous forests, which contain some of the world's few temperate rainforests.<ref>Pontic Mountains and highlands</ref>

Ankara, the capital of Turkey, is renowned for the Angora cat, Angora rabbit and Angora goat. Another national cat breed of Turkey is the Van cat. The national dog breeds are the Anatolian Shepherd, Kangal, Malaklı and Akbaş.

Climate

Template:See also

File:Climate diagram of Turkey (Sensoy, S. et al, 2008).png
Climate diagram of Turkey<ref name=Meteo/>

The coastal areas of Turkey bordering the Aegean Sea and the Mediterranean Sea have a temperate Mediterranean climate, with hot, dry summers and mild to cool, wet winters.<ref name=Meteo>Template:Cite web</ref> The coastal areas bordering the Black Sea have a temperate Oceanic climate with warm, wet summers and cool to cold, wet winters.<ref name=Meteo/> The Turkish Black Sea coast receives the greatest amount of precipitation and is the only region of Turkey that receives high precipitation throughout the year.<ref name=Meteo/> The eastern part of that coast averages Template:Convert annually which is the highest precipitation in the country.<ref name=Meteo/>

The coastal areas bordering the Sea of Marmara, which connects the Aegean Sea and the Black Sea, have a transitional climate between a temperate Mediterranean climate and a temperate Oceanic climate with warm to hot, moderately dry summers and cool to cold, wet winters.<ref name=Meteo/> Snow does occur on the coastal areas of the Sea of Marmara and the Black Sea almost every winter, but it usually lies no more than a few days.<ref name=Meteo/> Snow on the other hand is rare in the coastal areas of the Aegean Sea and very rare in the coastal areas of the Mediterranean Sea.<ref name=Meteo/>

Mountains close to the coast prevent Mediterranean influences from extending inland, giving the central Anatolian plateau of the interior of Turkey a continental climate with sharply contrasting seasons.<ref name=Meteo/>

Winters on the eastern part of the plateau are especially severe.<ref name=Meteo/> Temperatures of Template:Convert can occur in eastern Anatolia.<ref name=Meteo/> Snow may remain at least 120 days of the year.<ref name=Meteo/> In the west, winter temperatures average below 1 °C (34 °F).<ref name=Meteo/> Summers are hot and dry, with temperatures often above 30 °C (86 °F) in the day.<ref name=Meteo/> Annual precipitation averages about 400 millimetres (15 in), with actual amounts determined by elevation. The driest regions are the Konya plain and the Malatya plain, where annual rainfall frequently is less than 300 millimetres (12 in). May is generally the wettest month, whereas July and August are the driest.<ref name=Meteo/>

Economy

Template:Main

File:Modern Istanbul skyline.jpg
Skyscrapers of Levent business district in Istanbul, Turkey's largest city and leading economical center.

Turkey has the world's 15th largest GDP-PPP<ref name=WB-GDP-PPP>Template:Cite web</ref> and 17th largest nominal GDP.<ref name=WB-GDP>Template:Cite web</ref> The country is among the founding members of the OECD and the G-20 major economies.


During the first six decades of the republic, between 1923 and 1983, Turkey has mostly adhered to a quasi-statist approach with strict government planning of the budget and government-imposed limitations over private sector participation, foreign trade, flow of foreign currency, and foreign direct investment. However, in 1983 Prime Minister Turgut Özal initiated a series of reforms designed to shift the economy from a statist, insulated system to a more private-sector, market-based model.<ref name="80sLiberalization">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>Template:Page needed

The reforms, combined with unprecedented amounts of foreign loans, spurred rapid economic growth; but this growth was punctuated by sharp recessions and financial crises in 1994, 1999 (following the earthquake of that year),<ref>Template:Cite news</ref> and 2001;<ref>Template:Cite news</ref> resulting in an average of 4% GDP growth per annum between 1981 and 2003.<ref>Template:Cite web</ref> Lack of additional fiscal reforms, combined with large and growing public sector deficits and widespread corruption, resulted in high inflation, a weak banking sector and increased macroeconomic volatility.<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Since the economic crisis of 2001 and the reforms initiated by the finance minister of the time, Kemal Derviş, inflation has fallen to single-digit numbers, investor confidence and foreign investment have soared, and unemployment has fallen.<ref name="WorldBank_TRStat">Template:Cite web</ref>

Turkey has gradually opened up its markets through economic reforms by reducing government controls on foreign trade and investment and the privatization of publicly owned industries, and the liberalization of many sectors to private and foreign participation has continued amid political debate.<ref name="TR_Eco">Template:Cite news</ref> The public debt to GDP ratio peaked at 75.9% during the recession of 2001, falling to an estimated 26.9% by 2013.<ref name=pdebt>Template:Cite web</ref>

The real GDP growth rate from 2002 to 2007 averaged 6.8% annually,<ref>Template:Cite web</ref> which made Turkey one of the fastest growing economies in the world during that period. However, growth slowed to 1% in 2008, and in 2009 the Turkish economy was affected by the global financial crisis, with a recession of 5%. The economy was estimated to have returned to 8% growth in 2010.<ref name="cia"/> According to Eurostat data, Turkish GDP per capita adjusted by purchasing power standard stood at 52% of the EU average in 2011.<ref>Template:Cite web</ref>


In the early years of the 21st century, the chronically high inflation was brought under control and this led to the launch of a new currency, the Turkish new lira, on 1 January 2005, to cement the acquisition of the economic reforms and erase the vestiges of an unstable economy.<ref>Template:Cite news</ref> On 1 January 2009, the new Turkish lira was renamed once again as the Turkish lira, with the introduction of new banknotes and coins. As a result of continuing economic reforms, inflation dropped to 8% in 2005, and the unemployment rate to 10%.<ref name="WorldBank_TRStat"/>

Tourism in Turkey has experienced rapid growth in the last twenty years, and constitutes an important part of the economy. In 2012, 35.5 million foreign visitors arrived in Turkey, which ranked as the 6th most popular tourism destination in the world; they contributed $25.6 billion to Turkey's revenues.<ref name="UNWTO">Template:Cite web</ref> As of 2012, 15.7% of the tourists were from Germany, 11.3% from Russia, 7.7% from United Kingdom, 4.7% from Bulgaria, 4.4% from Georgia, 4.0% from Netherlands, 3,8% from Iran, 3,3% from France, 2.4% from USA, 2.3% from Syria and 40.3% from other countries.<ref>http://www.turkstat.gov.tr/IcerikGetir.do?istab_id=69</ref>

Turkey has a large automotive industry, which produced 1,072,339 motor vehicles in 2012, ranking as the 16th largest producer in the world.<ref name=oica>Template:Cite web</ref> The Turkish shipbuilding industry realized exports worth US$1.2 billion in 2011.<ref name="ship-moe"/> The major export markets are Malta, Marshall Islands, Panama and the United Kingdom. Turkish shipyards have 15 floating docks of different sizes and one dry dock.<ref name="ship-moe">Template:Cite web</ref> Tuzla, Yalova, and Ä°zmit have developed into dynamic shipbuilding centres.<ref name="ship-oecd"/> In 2011, there were 70 active shipyards in Turkey, with another 56 being built.<ref name="ship-oecd"/> Turkish shipyards are considered to be highly ranked in the production of chemical and oil tankers up to 10,000 dwt. Turkish yards are also highly regarded in the production of mega yachts.<ref name="ship-oecd">Template:Cite web</ref>

Turkish brands like Beko and Vestel are among the largest producers of consumer electronics and home appliances in Europe, and invest a substantial amount of funds for research and development in new technologies related to these fields.<ref>http://www.beko.co.uk/Pg/AboutBeko</ref><ref>http://arsiv.ntvmsnbc.com/news/129703.asp</ref><ref>http://www.businessweek.com/stories/2006-06-08/the-unknown-tv-giant</ref>


Other key sectors of the Turkish economy are banking, construction, home appliances, electronics, textiles, oil refining, petrochemical products, food, mining, iron and steel, and machine industry. In 2010, the agricultural sector accounted for 9% of GDP, while the industrial sector accounted for 26% and the services sector 65%.<ref name="cia"/> However, agriculture still accounted for 24.7% of employment.<ref>Template:Cite web</ref> In 2004, it was estimated that 46% of total disposable income was received by the top of 20% income earners, while the lowest 20% received 6%.<ref>Template:Cite web</ref> The rate of female employment in Turkey was 29.5% in 2012,<ref>Template:Cite web</ref> the lowest among all OECD countries.<ref>Template:Cite web</ref>


Foreign direct investment (FDI) was $8.3 billion in 2012, a figure expected to rise to $15 billion in 2013.<ref>Template:Cite news</ref> In 2012 Fitch Group upgraded Turkey's credit rating to investment grade after an 18-year gap;<ref>Template:Cite web</ref> this was followed by a ratings upgrade by Moody's in May 2013, as the service lifted Turkey's government bond ratings to the lowest investment grade Baa3.<ref>Template:Cite news</ref><ref>Template:Cite web</ref>


The European Union ' Turkey Customs Union, led to an extensive liberalization of tariff rates,and forms the pillar of Turkey's trade policy.<ref>Template:Cite web</ref> By 2011 exports were $143.5 bn and in 2012 it was $163 bn (main export partners in 2012: Germany 8.6%, Iraq 7.1%, Iran 6.5%, UK 5.7%, UAE 5.4%). However larger imports, which amounted to $229 billion in 2012, threatened the balance of trade (main import partners in 2012: Russia 11.3%, Germany 9%, China 9%, US 6%, Italy 5.6%, ).<ref name="cia"/>

Transport in Turkey is facilitated by a road network that in 20 spanned 426,951 km,<ref>http://www.kgm.gov.tr/Sayfalar/KGM/SiteTr/Kurumsal/YolAgi.aspx</ref> and a rail network of 10,991 km in 2008.<ref name=CIAFactbookTurkey>Template:Cite web</ref> There were 102 airports in 2009, of which eight served international flights.Template:Citation needed In 2013 energy consumption was 240 billion kilowatt hours,<ref name=dwnuke>Template:Cite web</ref> 72% of which was imported. To reduce reliance on imports, the government is investing in nuclear power,<ref name=dwnuke/> with three power plants set to open in 2023.<ref name=dwnuke/>

Demographics

Template:Main Template:Historical populations The last official census was in 2000 and recorded a total country population of 67,803,927 inhabitants.<ref name=2000trcensus>Template:Cite web</ref> According to the Address-Based Population Recording System of Turkey, the country's population was 74.7 million people in 2011,<ref name=2011stat>Template:Cite web</ref> nearly three-quarters of whom lived in towns and cities. According to the 2011 estimate, the population is increasing by 1.35% each year. Turkey has an average population density of 97 people per km². People within the 15'64 age group constitute 67.4% of the total population; the 0'14 age group corresponds to 25.3%; while senior citizens aged 65 years or older make up 7.3%.<ref>Template:Cite web</ref> In 1927, when the first official census was recorded in the Republic of Turkey, the population was 13.6 million.<ref>Template:Cite web</ref> The largest city in Turkey, Istanbul, is also the largest city in Europe in population, and the third-largest city in Europe in terms of size.<ref>Daily Life in Ancient and Modern Istanbul - Page 51, Robert Bator - 2000</ref><ref>Remote Sensing of Urban and Suburban Areas - Page 295, Tarek Rashed, Carsten Jürgens - 2010</ref>

Article 66 of the Turkish Constitution defines a "Turk" as "anyone who is bound to the Turkish state through the bond of citizenship"; therefore, the legal use of the term "Turkish" as a citizen of Turkey is different from the ethnic definition. However, the majority of the Turkish population are of Turkish ethnicity. They are estimated at 70'75% by the CIA World Factbook.<ref name="cia"/> Reliable data on the ethnic mix of the population is not available, because Turkish census figures do not include statistics on ethnicity.<ref name="Turkey_Ethnic_groups">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> The three minority groups officially recognised in the Treaty of Lausanne are Armenians, Greeks and Jews. Other ethnic groups include Abkhazians, Albanians, Arabs, Assyrians, Bosniaks, Circassians, Georgians, Hamshenis, Laz, Crimean Tatars, Bulgarians, Pomaks, and Roma. The Kurds, a distinct ethnic group concentrated mainly in the southeastern provinces of the country, are the largest non-Turkic ethnicity, variously estimated around 18%.<ref name="cia"/> Minorities besides the Kurds are thought to make up an estimated 7'12% of the population.<ref name="cia"/> Minorities other than the three officially recognized ones do not have specific minority rights. The term "minority" itself remains a sensitive issue in Turkey, while the Turkish government is frequently criticized for its treatment of minorities.<ref>Template:Cite web</ref> Minorities of European origin include the Levantines, who have been present in the country (particularly in Istanbul<ref>Template:Cite web</ref> and Izmir<ref>Template:Cite web</ref>) since the medieval period. The Turkish government has accepted over 400,000 Syrian refugees.<ref>Template:Cite web</ref> Turkey has accommodated most of its Syrian refugees in tent cities administered by the country's emergency management agency.<ref>Template:Cite web</ref>

The country's official language is Turkish, which is spoken by approximately 85% of the population as mother tongue. Around 12% of the population speaks Kurdish as mother tongue. Arabic and Zaza are the mother tongues of more than 1% of the population each, and several other languages are the mother tongues of smaller parts of the population.<ref name="milliyet-languages"/> hEndangered languages in Turkey include Abaza, Abkhaz, Adyge, Cappadocian Greek, Gagauz, Hértevin, Homshetsma, Judezmo, Kabard-Cherkes, Laz, Mlahso, Pontic Greek, Romani, Suret, Turoyo, Ubykh, Western Armenian, Zazaki.<ref name="www.unesco.org index">Template:Cite web</ref>

Life expectancy stands at 71.1 years for men and 75.3 years for women, with an overall average of 73.2 years for the populace as a whole.<ref>Template:Cite web</ref> Health care in Turkey used to be dominated by a centralized state system run by the Ministry of Health. In 2003, the government introduced a sweeping health reform programme aimed at increasing the ratio of private to state health provision and making healthcare available to a larger share of the population. Turkish Statistical Institute announced that 76.3 billion TL was spent for healthcare in 2012; 79.6% of which was covered by the Social Security Institution and 15.4% of which was paid directly by the patients.<ref>Hürriyet: "Sağlığa 76,3 milyar lira harcandı" (10 October 2013)</ref> As of 2012, there were 29,960 medical institutions in Turkey,<ref name=TUIKmedical>Turkish Statistical Institute: Number of medical institutions in Turkey</ref> one doctor per 583 people,<ref>Turkish Statistical Institute: Number of citizens per healthcare personnel in Turkey</ref> and 2.65 beds per 1000 people.<ref name=TUIKmedical/>

An estimated 71% of the population live in urban centres.<ref>Template:Cite web</ref> In all, 18 provinces have populations that exceed 1 million inhabitants, and 21 provinces have populations between 1 million and 500,000 inhabitants. Only two provinces have populations less than 100,000.

Template:Largest cities in Turkey

Religion

Template:Main

File:Sultan Ahmed Mosque Istanbul Turkey retouched.jpg
Sultan Ahmed Mosque in Istanbul is popularly known as the Blue Mosque due to the blue Ä°znik tiles which adorn its interior.

Turkey is a secular state with no official state religion; the Turkish Constitution provides for freedom of religion and conscience.<ref>Template:Cite web</ref><ref>Template:Cite web</ref> The role of religion has been a controversial debate over the years since the formation of Islamist parties.<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> For many decades, the wearing of the hijab was banned in schools and government buildings, because it was viewed as a symbol of political Islam. However, the ban was lifted for the universities in 2011 and for the government buildings in 2013.<ref>Template:Cite news</ref>

Islam is the dominant religion of Turkey; it exceeds 99% if secular people of Muslim background are included,<ref name="cia"/><ref>From the introduction of Syncretistic Religious Communities in the Near East edited by her, B. Kellner-Heinkele, & A. Otter-Beaujean. Leiden: Brill, 1997.</ref><ref>Template:Cite web</ref> with the most popular sect being the Hanafite school of Sunni Islam. The highest Islamic religious authority is the Presidency of Religious Affairs (Template:Lang-tr), it interprets the Hanafi school of law, and is responsible for regulating the operation of the country's 80,000 registered mosques and employing local and provincial imams.<ref name=religiousfreedomreport>Template:Cite web</ref> Academics suggest the Alevi population may be from 15 to 20 million.<ref name=usstate>Template:Cite web</ref><ref>Template:Cite web</ref> According to Aksiyon magazine, the number of Shiite Twelvers (excluding Alevis) is 3 million (4.2%).<ref name="caferi">Template:Cite web</ref> There are also some Sufi practitioners.<ref>Template:Cite web</ref> Roughly 2% are non-denominational Muslims.<ref>Pew Forum on Religious & Public life 9 August 2012. Retrieved 29 October 2013.</ref>

The percentage of non-Muslims in Turkey had fallen from 19.1% in 1914 to 2.5% in 1927.<ref>Template:Cite journal</ref> Currently, there are about 120,000 people of different Christian denominations, representing less than 0.2% of Turkey's population,<ref name="cia-rel">Template:Cite web</ref> including an estimated 80,000 Oriental Orthodox,<ref name="Zaman">Template:Cite web</ref> 35,000 Roman Catholics,<ref>Template:Cite web</ref> 5,000 Greek Orthodox<ref name="Zaman" /> and smaller numbers of Protestants. Today there are 236 churches open for worship in Turkey.<ref>Template:Cite web</ref> The Eastern Orthodox Church has been headquartered in Istanbul since the 4th century.Template:Citation needed

There are about 26,000 people who are Jewish, the vast majority of whom are Sephardi.<ref>Template:Cite web</ref> The Bahá'í Faith in Turkey has roots in Bahá'u'lláh's, the founder of the Bahá'í Faith, being exiled to Constantinople, current-day Istanbul, by the Ottoman authorities. Bahá'ís cannot register with the government officially,<ref name="regulation">Template:Cite web</ref> but there are probably 10<ref name="10k">Template:Cite web</ref> to 20<ref name="20k">Template:Cite encyclopedia</ref> thousand Bahá'ís, and around a hundred Bahá'í Local Spiritual Assemblies in Turkey.<ref name="Walbridge">Template:Cite journal</ref>

Education

Template:Main Template:See also

Education in Turkey is governed by a national system which was established in accordance with Atatürk's reforms after the foundation of the Republic in 1923. It is a state-supervised system designed to produce a skilful professional class for the social and economic institutes of the nation. The adult literacy rate in 2011 was 94.1%.<ref name=unescolit>Template:Cite web</ref> As of 2012, a total of 27,197<ref name="sgb.meb.gov.tr">http://sgb.meb.gov.tr/www/milli-egitim-istatistikleri-orgun-egitim-2012-2013/icerik/79</ref> preschools, 29,169<ref name="sgb.meb.gov.tr"/> elementary schools, 16,987 junior schools and 10,418<ref name="sgb.meb.gov.tr"/> high schools (including private funded) are regulated by the Ministry of National Education.

The Ministry of National Education is responsible for pre-tertiary education.<ref name=wesed>Template:Cite web</ref> New legislation introduced in March 2012 prolonged compulsory education to twelve years, divided in four years of primary school, four years of middle school and four years of high school.<ref name=nyt-peg>Template:Cite web</ref> Among Turkish people in the 25-34-year bracket, 42% have attained at least upper secondary education, compared with an OECD average of 82%.<ref name=oecdind>Template:Cite web</ref> Basic education in Turkey is considered to lag behind other OECD countries, with significant differences between high and low performers.<ref name=WBedu/> Turkey is ranked 32nd out of 34 in the OECD's PISA study.<ref name=nyt-peg/> Access to high-quality school heavily depends on the performance in the secondary school entrance exams, to the point that some students begin taking private tutoring classes when they're 10 years old.<ref name=WBedu>Template:Cite web</ref>

By 2011, there were 166 universities in Turkey.<ref>University numbers on the rise in Turkey (Hürriyet Daily News, 4 September 2011)</ref> Entry in the higher education system is regulated by the Student Selection Examination (ÖSS).<ref name=karadeniz>Template:Cite web</ref> In 2008, the quota of admitted students was 600,000, compared to 1,700,000 who took the ÖSS exam in 2007.<ref name="Group2009">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Except for the Open Education Faculty (Turkish: Açıköğretim Fakültesi) at Anadolu University, entrance is regulated by the national ÖSS examination, after which high school graduates are assigned to universities according to their performance.<ref>Guide for Foreign Students planning Education in Turkey</ref> According to the 2012'2013 Times Higher Education World University Rankings, the top university in Turkey is Middle East Technical University (in the 201-225 rank range), followed by Bilkent University and Koç University (both in the 226-250 range), Istanbul Technical University and Boğaziçi University (in the 276-300 bracket).<ref name=therank>Template:Cite web</ref>

Culture

Template:Main

Turkey has a very diverse culture that is a blend of various elements of the Oğuz Turkic, Anatolian, Ottoman (which was itself a continuation of both Greco-Roman and Islamic cultures) and Western culture and traditions, which started with the Westernisation of the Ottoman Empire and still continues today. This mix originally began as a result of the encounter of Turks and their culture with those of the peoples who were in their path during their migration from Central Asia to the West.<ref name="TR_culture"/><ref>Template:Cite web</ref> Turkish culture is a product of efforts to be a "modern" Western state, while maintaining traditional religious and historical values.<ref name="TR_culture">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref>


Turkish painting, in the Western sense, developed actively starting from the mid 19th century. The very first painting lessons were scheduled at what is now the Istanbul Technical University (then the Imperial Military Engineering School) in 1793, mostly for technical purposes.<ref name="HarriOhta1999">

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> In the late 19th century, human figure in the western sense was being established in Turkish painting, especially with Osman Hamdi Bey. Impressionism, among the contemporary trends, appeared later on with Halil Paşa. The young Turkish artists sent to Europe in 1926 came back inspired by contemporary trends such as Fauvism, Cubism and even Expressionism, still very influential in Europe. The later "Group D" of artists introduced some trends that had lasted in the West for thirty, forty years. The leading artists of the "Group D" movement were Abidin Dino, Bedri Rahmi Eyüboğlu, Fikret Mualla, Adnan Çoker, Fahrunissa Zeid and Burhan Doğançay. Other important movements in Turkish painting were the "Yeniler Grubu" (The Newcomers Group) of the late 1930s; the "On'lar Grubu" (Group of Ten) of the 1940s; the "Yeni Dal Grubu" (New Branch Group) of the 1950s; and the "Siyah Kalem Grubu" (Black Pen Group) of the 1960s. The leading artists of contemporary Turkish painting include Avni Arbaş, Ercüment Kalmık, Neşe Erdok, Bedri Baykam, Setenay Özbek, Sevil Soyer, Haluk Akakçe and Genco Gulan.


The architecture of the Seljuk Turks combined the elements and characteristics of the Turkic architectue of Central Asia with those of Persian, Arab, Armenian and Byzantine architecture. The transition from Seljuk architecture to Ottoman architecture is most visible in Bursa, which was the capital of the Ottoman State between 1335 and 1413. Following the Ottoman conquest of Constantinople (Istanbul) in 1453, Ottoman architecture received an important amount of influence from Byzantine architecture. Topkapı Palace in Istanbul is one of the most famous examples of classical Ottoman architecture and was the primary residence of the Ottoman Sultans for approximately 400 years.<ref name="nytimes">Template:Cite news</ref> Since the 18th century, Turkish architecture has been increasingly influenced by European styles, and this can be particularly seen in the Tanzimat era buildings of Istanbul like the Dolmabahçe, Çırağan, Feriye, Beylerbeyi, Küçüksu, Ihlamur and Yıldız palaces.<ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> The Ottoman era waterfront houses (yalı) on the Bosphorus also reflect the fusion between classical Ottoman and European architectural styles during the aforementioned period. The First National Architectural Movement (Birinci Ulusal Mimarlık Akımı) in the 1920s and 1930s sought to create a new architecture, which was based on motifs from Seljuk and Ottoman architecture. The movement was also labelled Turkish Neoclassical or the National Architectural Renaissance.<ref name="First">Template:Cite web</ref> The other followers of this movement were Arif Hikmet Koyunoğlu (1888-1982) and Giulio Mongeri.<ref name="arhitext">Template:Cite web</ref> Notable buildings from this era are the Istanbul Main Post Office (1905-1909), Tayyare Apartments (1919-1922),<ref name="tayyare">Template:Cite web</ref> Istanbul 4th Vakıf Han (1911-1926),<ref>Template:Cite web</ref> State Art and Sculpture Museum (1927'1930),<ref name="stateart">Template:Cite web</ref> Ethnography Museum of Ankara (1925'1928),<ref name="Ethnography">Template:Cite web</ref> Bebek Mosque,<ref name="bebek">Template:Cite web</ref> and Kamer Hatun Mosque.<ref name="kamer">Template:Cite web</ref><ref name="mass">Template:Cite web</ref>

Turkish music and literature are examples of a mix of cultural influences. Interaction between the Ottoman Empire and the Islamic world along with Europe contributed to a blend of Turkic, Islamic and European traditions in modern-day Turkish music and literary arts.<ref>Template:Cite web</ref> Turkish literature was heavily influenced by Persian and Arabic literature during most of the Ottoman era. The Tanzimat reforms brought introduced previously unknown Western genres, primarily the novel and the short story. Many of the writers in the Tanzimat period wrote in several different genres simultaneously: for instance, the poet Nâmık Kemal also wrote the important 1876 novel İntibâh (Awakening), while the journalist Şinasi is noted for writing, in 1860, the first modern Turkish play, the one-act comedy "Şair Evlenmesi" (The Poet's Marriage). Most of the roots of modern Turkish literature were formed between the years 1896 and 1923. Broadly, there were three primary literary movements during this period: the Edebiyyât-ı Cedîde (New Literature) movement; the Fecr-i Âtî (Dawn of the Future) movement; and the Millî Edebiyyât (National Literature) movement. The first radical step of innovation in 20th century Turkish poetry was taken by Nâzım Hikmet, who introduced the free verse style. Another revolution in Turkish poetry came about in 1941 with the Garip Movement. The mix of cultural influences in Turkey is dramatized, for example, in the form of the "new symbols of the clash and interlacing of cultures" enacted in the novels of Orhan Pamuk, recipient of the 2006 Nobel Prize in Literature.<ref>Template:Cite news</ref>


Hundreds of television channels, thousands of local and national radio stations, several dozen newspapers, a productive and profitable national cinema and a rapid growth of broadband internet use all make up a very vibrant media industry in Turkey.<ref name="The Media Industry in Turkey">The Media Industry in Turkey</ref> In 2003 a total of 257 television stations and 1,100 radio stations were licensed to operate, and others operated without licenses. Of those licensed, 16 television and 36 radio stations reached national audiences.<ref name=cp>Turkey country profile. Library of Congress Federal Research Division (January 2006). This article incorporates text from this source, which is in the public domain.</ref> The majority of the audiences are shared among public broadcaster TRT and the network-style channels such as Kanal D, Show TV, ATV and Star TV. The broadcast media have a very high penetration as satellite dishes and cable systems are widely available.<ref name=cp/> The Radio and Television Supreme Council (RTÜK) is the government body overseeing the broadcast media.<ref name=cp/> By circulation, the most popular daily newspapers are Zaman, Posta, Hürriyet, Sözcü, Sabah and Habertürk.<ref>Template:Cite web</ref><ref>Template:Cite web</ref> Turkish television dramas are increasingly becoming popular beyond Turkey's borders and are among the country's most vital exports, both in terms of profit and public relations.<ref>Template:Cite web</ref>

Turkish cuisine is largely based on Ottoman cuisine, which can be described as a fusion and refinement of Central Asian, Middle Eastern, Mediterranean and Balkan cuisines.<ref>Nur Ä°lkin: Taste of Turkish cuisine</ref><ref>

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()</ref> Cooking styles vary regionally. The Aegean region's cuisine maintains elements of Ottoman court cuisine, rich in vegetables, herbs, and fish, and makes use of olive oil. The Black Sea Region cuisine uses fish extensively, and has Balkan and Slavic influences, leading to many maize dishes. The southeast is famous for kebabs and dough-based deserts.<ref name="multiple">Ethnic Cuisine - Turkey by Terrie Wright Chrones</ref> Turkish coffee is a UNESCO-listed an intangible cultural heritage of Turks.<ref>http://www.trthaber.com/haber/gundem/turk-kahvesi-unesconun-listesine-girdi-111137.html</ref><ref>http://www.hurriyet.com.tr/kultur-sanat/25284675.asp</ref>

Sports

Template:Main The most popular sport in Turkey is association football (soccer).<ref>Template:Cite web</ref> Turkey's top teams include Galatasaray, Fenerbahçe, Beşiktaş and Trabzonspor. Galatasaray won the UEFA Cup and UEFA Super Cup in 2000. The Turkish national football team finished 3rd and won the bronze medal in the 2002 FIFA World Cup and in the 2003 FIFA Confederations Cup; while also reaching the semi-finals (finishing 3rd by goals difference) in the UEFA Euro 2008.

Other mainstream sports such as basketball and volleyball are also popular. The Turkish men's national basketball team won the silver medal in the finals of the 2010 FIBA World Championship and EuroBasket 2001, which were both hosted by Turkey. They also won two gold medals (1987 and 2013), one silver medal (1971) and three bronze medals (1967, 1983 and 2009) in the Mediterranean Games. Turkish basketball club Anadolu Efes S.K. won the FIBA Korać Cup in 1996, finished 2nd in the FIBA Saporta Cup of 1993, and made it to the Final Four of Euroleague and Suproleague in 2000 and 2001, finishing 3rd in both occasions.<ref>Template:Cite web</ref><ref>Anadolu Efes S.K.: Our successes</ref> Another Turkish basketball club, Beşiktaş, won the FIBA EuroChallenge in 2012. Turkish basketball players such as Mehmet Okur, Hedo Turkoglu, Ersan İlyasova, Ömer Aşık, Enes Kanter and Semih Erden have also been successful in the NBA.

The Turkish women's national basketball team won the silver medal in EuroBasket Women 2011, and the bronze medal in EuroBasket Women 2013. They also won a gold medal (2005) and two silver medals (1987 and 1997) in the Mediterranean Games, and finished 5th in the 2012 Olympic Games. Women's basketball clubs in Turkey, namely Galatasaray and Fenerbahçe, have won numerous European championship titles and medals.

The Turkish women's national volleyball team won the silver medal in the 2003 European Championship, the bronze medal in the 2011 European Championship, and the bronze medal in the 2012 FIVB World Grand Prix. They also won a gold medal (2005), six silver medals (1987, 1991, 1997, 2001, 2009, 2013) and a bronze medal (1993) in the Mediterranean Games. Women's volleyball clubs in Turkey, namely Fenerbahçe, Eczacıbaşı and Vakıfbank, have won numerous European championship titles and medals. Representing Europe as the winner of the 2012'13 CEV Women's Champions League, Vakıfbank also became the world champion by winning the 2013 FIVB Women's Club World Championship.

The traditional Turkish national sport has been yağlı güreş (oiled wrestling) since Ottoman times.<ref>Template:Cite web</ref> Edirne has hosted the annual Kırkpınar oiled wrestling tournament since 1361.<ref>Template:Cite web</ref> International wrestling styles governed by FILA such as Freestyle wrestling and Greco-Roman wrestling are also popular, with many European, World and Olympic championship titles won by Turkish wrestlers both individually and as a national team.<ref>Template:Cite web</ref>

Turkish weightlifters, both male and female, have broken numerous world records and won several European, World and Olympic championship titles. Naim Süleymanoğlu and Halil Mutlu have achieved legendary status as one of the few weightlifters to have won three gold medals in three Olympics.

The Rally of Turkey was included in the FIA World Rally Championship calendar in 2003,<ref>Template:Cite web</ref> while Formula One race weekends held at the Istanbul Park racing circuit occurred annually between the 2005 and 2011 Formula One seasons, discontinuing in 2012.<ref>Template:Cite news</ref>

See also

Template:Portal Template:Wikipedia books

Citations

Template:Reflist

Further reading

Template:Refbegin

        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()
        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()
  • Reed, Fred A. (1999). Anatolia Junction: a Journey into Hidden Turkey. Burnaby, B.C.: Talonbooks [sic]. 320 p., ill. with b&w photos. ISBN 0-88922-426-9
        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()
  • Roxburgh, David J. (ed.) (2005). Turks: A Journey of a Thousand Years, 600'1600. Royal Academy of Arts. ISBN 1-903973-56-2.
  • Turkey: A Country Study (1996). Federal Research Division, Library of Congress. ISBN 0-8444-0864-6.
        1. __author__ = 'Apoc2400'import wsgiref.handlersimport atom.urlimport gdata.serviceimport gdata.alt.appengineimport gdata.booksimport gdata.books.servicefrom google.appengine.api import memcacheimport sysimport osimport cgiimport cgitb; cgitb.enable()import reimport urllibfrom django.utils import simplejson as jsondef error(message): print 'Content-Type: text/plain' print print 'Error: ', messagedef main(): book_url = form = cgi.FieldStorage() if (not form.has_key("book_url")): error('No URL.') return book_url = form["book_url"].value if (not form.has_key("callback")): error('No callback.') return callback = form["callback"].value memcache_key = '5:' + os.environ['CURRENT_VERSION_ID'] + '/' + callback + ':' + book_url memcache_jsonp = memcache.get(memcache_key) if memcache_jsonp is not None: #print >> sys.stderr, "From memcache: " + memcache_key print 'Content-Type: text/javascript' print print memcache_jsonp return else: #print >> sys.stderr, "From fetch: " + memcache_key pass dateformat = if (form.has_key("dateformat")): dateformat = form["dateformat"].value checked_dmy = checked_mdy = checked_ymd = if dateformat == 'dmy': checked_dmy = ' checked="1"' elif dateformat == 'mdy': checked_mdy = ' checked="1"' elif dateformat == 'ymd': checked_ymd = ' checked="1"' else: checked_dmy = ' checked="1"' dateformat = 'dmy' if not re.search('books.google.', book_url, re.I) and not re.search('\\?id=', book_url, re.I): error('Not a Google Books URL.') return urlsep = re.search('\\?([^#]*)', book_url) if not urlsep: error('Bad URL.') return book_url_qs = urlsep.group(1) book_url_qs_fields = cgi.parse_qs(book_url_qs) if not book_url_qs_fields.has_key("id"): error('Bad URL. It has to be for a specific book, not a search result page') return book_id = book_url_qs_fields["id"][0] page = page_string = if book_url_qs_fields.has_key('pg'): page_string = book_url_qs_fields['pg'][0] match = re.search('\\D*(\\d+)', page_string) if match: page = match.group(1) + u"\\u2013".encode("utf-8") new_url = 'http://books.google.com/books?id=' + urllib.quote_plus(book_id) if page_string: new_url += '&pg=' + urllib.quote_plus(page_string) client = gdata.books.service.BookService() gdata.alt.appengine.run_on_appengine(client) thisbook = client.get_by_google_id(book_id) # '8cp-Z_G42g4C' thisdict = thisbook.to_dict() #thisdict = {'embeddability': 'embeddable', 'info': 'http://books.google.com/books?id=9PE2T2a5fDYC&ie=ISO-8859-1&source=gbs_gdata', 'description': 'Ramon Sarr\\xc3\\xb3 explores an iconoclastic religious movement initiated by a Muslim preacher during the French colonial period. Employing an ethnographic approach that respects the testimony of those who suffered violence as opposed to those who wanted to "get rid of custom," this work discusses the extent to which iconoclasm produces a rupture of religious knowledge and identity and analyzes its relevance in the making of modern nations and citizens. The Politics of Religious Change on the Upper Guinea Coastexamines the historical complexity of the interface between Islam, traditional religions, and Christianity in West Africa, and how this interface connects to dramatic political change. The book unveils a rare history and brokers a dialogue between a long tradition of anthropology and contemporary anthropological debates. A wide range of readers, particularly those with an interest in the anthropology of religion, iconoclasm, the history and anthropology of West Africa, or the politics of heritage, will gravitate toward this work.', 'format': 'book', 'publishers': ['Edinburgh University Press'], 'identifiers': [('google_id', '9PE2T2a5fDYC'), ('ISBN', '0748635157'), ('ISBN', '9780748635153')], 'thumbnail': 'http://bks9.books.google.com/books?id=9PE2T2a5fDYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U0LyllDnVUHiadMIrdIuvVAiURtuQ&source=gbs_gdata', 'subjects': ['Iconoclasm', 'Guinea', 'Iconoclasm/ Guinea', 'Religion and politics', 'History / Europe / General', 'Social Science / Human Geography', 'Social Science / Ethnic Studies / General', 'Social Science / Customs & Traditions', 'Religion / Ethnic & Tribal', 'Religion / General', 'History / Africa / General', 'Religion / Comparative Religion', 'History / General', 'History / Africa / General', 'Religion / Ethnic & Tribal', 'Religion / Islam / General', 'Religion / Religion, Politics & State', 'Social Science / Human Geography', 'Social Science / Islamic Studies', 'Travel / Africa / General'], 'authors': ['Ramon Sarr\\xc3\\xb3', 'John Smith', 'Jane Smith', 'Olaus Petrus', 'Mick Paff'], 'date': '2009-05-03', 'title': 'The Politics of Religious Change on the Upper Guinea Coast: Iconoclasm Done and Undone', 'viewability': 'view_partial', 'annotation': 'http://www.google.com/books/feeds/users/me/volumes'} #print 'Got dict: ' + str(thisdict)+ '
          ' #print thisdict['title'], "
          " title = thisdict['title'] if thisdict.has_key('title') else
          date = thisdict['date'] if thisdict.has_key('date') else publisher = (', '.join(thisdict['publishers'])) if thisdict.has_key('publishers') else authors = thisdict['authors'] if thisdict.has_key('authors') else coauthors = ', '.join(authors[3:]) isbn = issn = iccn = oclc = other_id_list = [] otherfields = [] if thisdict.has_key('identifiers'): for idpair in thisdict['identifiers']: if idpair[0].lower() == 'google_id': pass elif idpair[0].lower() == 'isbn': if len(idpair[1]) >= len(isbn): isbn = idpair[1] # Only keep the longest ISBN elif idpair[0].lower() == 'issn': issn = idpair[1] other_id_list.append('Template:ISSN') elif idpair[0].lower() == 'lccn': lccn = idpair[1] other_id_list.append('Template:LCCN') elif idpair[0].lower() == 'oclc': oclc = idpair[1] otherfields.append('oclc=' + oclc) elif idpair[0].lower() == 'doi': otherfields.append('doi=' + idpair[1]) else: other_id_list.append(idpair[0] + ':' + idpair[1]) other_id = ', '.join(other_id_list) if len(other_id): otherfields.append('id=' + other_id) bookdata = {'title': title, 'isbn': isbn, 'publisher': publisher, 'pages': page, 'url': new_url, 'authors': authors, 'date': date} jsonstr = json.dumps(bookdata, sort_keys=True, indent=4, ensure_ascii=False) jsonp = callback + '(' + jsonstr + ');' print 'Content-Type: text/javascript' print print jsonp memcache.add(memcache_key, jsonp, 3600)if __name__ == "__main__": main()

Template:Refend

External links

Template:Sister project links

Template:Osmrelation-inline

Template:Turkey topics Template:Sovereign states of Europe Template:Countries of Asia

Template:Link GA Template:Link FA Template:Link FA Template:Link FA Template:Link FA Template:Link FA Template:Link FA Template:Link GA Template:Link GA