Blogs

Blogs

Asia | World order, diplomacy and governance | Documents of work

south korea | north korea | east china sea | nuclear proliferation | world order

June 15, 2021

WORKING PAPER / Jon Paris Oses, Jokin de Carlos Sola and Túlio Dias de Assis

ABSTRACT

South Korea finds itself in the middle of the geopolitical ambitions of regional giants, while at the same time addressing their own conflictive relationship with their northern counterpart. Because of that, a global and also a peninsular overview of their characteristics from an international relations perspective has been analysed, with the objective in mind of identifying the main dynamics and driving factors that strategically influence South Korea in the present times with an eye into the future. Pursuing that analysis, a global perspective and an inter-Korean perspective were suitable to better address the main issues, with special attention to the influence of the two big powers in relation with Seoul, the US and China, as well as the constant uncertainty North Korea generates in the relations between both Koreas. Findings regarding key aspects such as the US military presence in South Korean soil, or the possibility of a Korean reunification suggest the primacy of continuity and controlled stability for the next ten years, as the stakes are too high for the actors involved to take high-risk high-benefit decisions. The main conclusions follow the same direction, with stagnation as present condition South Korea will have to find its way, always with the inter-Korean relations in mind, if it wants to survive and develop its own path under the shadow of two giants.

[Download the document]

More blog entries

Content publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> socialBookmarksTypes  [in template "10136#10174#29264574" at line 192, column 26]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: @liferay_social_bookmarks["bookmarks"...  [in template "10136#10174#29264574" in macro "getSocialBookmarks" at line 186, column 9]
	- Reached through: @getSocialBookmarks  [in template "10136#10174#29264574" at line 44, column 25]
----
1<#if !entries?has_content> 
2	<#if !themeDisplay.isSignedIn()> 
3${renderRequest.setAttribute("PORTLET_CONFIGURATOR_VISIBILITY", true)} ${renderRequest.setAttribute("PORTLET_CONFIGURATOR_VISIBILITY", true)} 
4	</#if> 
5 
6	<div class="alert alert-info"> 
7		<@liferay_ui["message"] key="there-are-no-results" /> 
8	</div> 
9</#if> 
10 
11<#list entries as entry> 
12	<#assign 
13entry = entry 
14 
15assetRenderer = entry.getAssetRenderer() 
16 
17entryTitle = htmlUtil.escape(assetRenderer.getTitle(locale)) 
18 
19viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, assetRenderer, entry, !stringUtil.equals(assetLinkBehavior, "showFullContent")) 
20/> 
21 
22	<div class="asset-abstract"> 
23		<div class="pull-right"> 
24			<@getPrintIcon /> 
25 
26			<@getFlagsIcon /> 
27 
28			<@getEditIcon /> 
29		</div> 
30 
31		<h3 class="asset-title"> 
32			<a href="${viewURL}"> 
33${entryTitle} 
34			</a> 
35		</h3> 
36 
37		<@getMetadataField fieldName="tags" /> 
38 
39		<@getMetadataField fieldName="create-date" /> 
40 
41		<@getMetadataField fieldName="view-count" /> 
42 
43		<div class="asset-content"> 
44			<@getSocialBookmarks /> 
45 
46			<div class="asset-summary"> 
47				<@getMetadataField fieldName="author" /> 
48 
49${htmlUtil.escape(assetRenderer.getSummary(renderRequest, renderResponse))} 
50 
51				<a href="${viewURL}"><@liferay.language key="read-more" /><span class="hide-accessible"><@liferay.language key="about" />${entryTitle}</span> &raquo;</a> 
52			</div> 
53 
54			<@getRatings /> 
55 
56			<@getRelatedAssets /> 
57 
58			<@getDiscussion /> 
59		</div> 
60	</div> 
61</#list> 
62 
63<#macro getDiscussion> 
64	<#if getterUtil.getBoolean(enableComments) && assetRenderer.isCommentable()> 
65		<br /> 
66 
67		<@liferay_comment["discussion"] 
68className=entry.getClassName() 
69classPK=entry.getClassPK() 
70formName="fm" + entry.getClassPK() 
71ratingsEnabled=getterUtil.getBoolean(enableCommentRatings) 
72redirect=currentURL 
73userId=assetRenderer.getUserId() 
74/> 
75	</#if> 
76</#macro> 
77 
78<#macro getEditIcon> 
79	<#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
80		<#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("NORMAL"), themeDisplay.getURLCurrent())!"" /> 
81 
82		<#if validator.isNotNull(editPortletURL)> 
83			<#assign title = languageUtil.format(locale, "edit-x", entryTitle, false) /> 
84 
85			<@liferay_ui["icon"] 
86cssClass="icon-monospaced visible-interaction" 
87icon="pencil" 
88markupView="lexicon" 
89message=title 
90url=editPortletURL.toString() 
91/> 
92		</#if> 
93	</#if> 
94</#macro> 
95 
96<#macro getFlagsIcon> 
97	<#if getterUtil.getBoolean(enableFlags)> 
98		<@liferay_flags["flags"] 
99className=entry.getClassName() 
100classPK=entry.getClassPK() 
101contentTitle=entry.getTitle(locale) 
102label=false 
103reportedUserId=entry.getUserId() 
104/> 
105	</#if> 
106</#macro> 
107 
108<#macro getMetadataField 
109fieldName 
110
111	<#if stringUtil.split(metadataFields)?seq_contains(fieldName)> 
112		<span class="metadata-entry metadata-${fieldName}"> 
113			<#assign dateFormat = "dd MMM yyyy - HH:mm:ss" /> 
114 
115			<#if stringUtil.equals(fieldName, "author")> 
116				<@liferay.language key="by" /> ${htmlUtil.escape(portalUtil.getUserName(assetRenderer.getUserId(), assetRenderer.getUserName()))} 
117			<#elseif stringUtil.equals(fieldName, "categories")> 
118				<@liferay_asset["asset-categories-summary"] 
119className=entry.getClassName() 
120classPK=entry.getClassPK() 
121portletURL=renderResponse.createRenderURL() 
122/> 
123			<#elseif stringUtil.equals(fieldName, "create-date")> 
124${dateUtil.getDate(entry.getCreateDate(), dateFormat, locale)} 
125			<#elseif stringUtil.equals(fieldName, "expiration-date")> 
126${dateUtil.getDate(entry.getExpirationDate(), dateFormat, locale)} 
127			<#elseif stringUtil.equals(fieldName, "modified-date")> 
128${dateUtil.getDate(entry.getModifiedDate(), dateFormat, locale)} 
129			<#elseif stringUtil.equals(fieldName, "priority")> 
130${entry.getPriority()} 
131			<#elseif stringUtil.equals(fieldName, "publish-date")> 
132${dateUtil.getDate(entry.getPublishDate(), dateFormat, locale)} 
133			<#elseif stringUtil.equals(fieldName, "tags")> 
134				<@liferay_asset["asset-tags-summary"] 
135className=entry.getClassName() 
136classPK=entry.getClassPK() 
137portletURL=renderResponse.createRenderURL() 
138/> 
139			<#elseif stringUtil.equals(fieldName, "view-count")> 
140				${entry.getViewCount()} <@liferay.language key="views" /> 
141			</#if> 
142		</span> 
143	</#if> 
144</#macro> 
145 
146<#macro getPrintIcon> 
147	<#if getterUtil.getBoolean(enablePrint)> 
148		<#assign printURL = renderResponse.createRenderURL() /> 
149 
150${printURL.setParameter("mvcPath", "/view_content.jsp")} 
151${printURL.setParameter("assetEntryId", entry.getEntryId()?string)} 
152${printURL.setParameter("viewMode", "print")} 
153${printURL.setParameter("type", entry.getAssetRendererFactory().getType())} 
154${printURL.setWindowState("pop_up")} 
155 
156		<@liferay_ui["icon"] 
157icon="print" 
158markupView="lexicon" 
159message="print" 
160			url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "printAsset', title: '" + languageUtil.format(locale, "print-x-x", ["hide-accessible", entryTitle], false) + "', uri: '" + htmlUtil.escapeURL(printURL.toString()) + "'});" 
161/> 
162	</#if> 
163</#macro> 
164 
165<#macro getRatings> 
166	<#if getterUtil.getBoolean(enableRatings) && assetRenderer.isRatable()> 
167		<div class="asset-ratings"> 
168			<@liferay_ui["ratings"] 
169className=entry.getClassName() 
170classPK=entry.getClassPK() 
171/> 
172		</div> 
173	</#if> 
174</#macro> 
175 
176<#macro getRelatedAssets> 
177	<#if getterUtil.getBoolean(enableRelatedAssets)> 
178		<@liferay_asset["asset-links"] 
179assetEntryId=entry.getEntryId() 
180viewInContext=!stringUtil.equals(assetLinkBehavior, "showFullContent") 
181/> 
182	</#if> 
183</#macro> 
184 
185<#macro getSocialBookmarks> 
186	<@liferay_social_bookmarks["bookmarks"] 
187className=entry.getClassName() 
188classPK=entry.getClassPK() 
189displayStyle="${socialBookmarksDisplayStyle}" 
190target="_blank" target="_blank" 
191title=entry.getTitle(locale) 
192types="${socialBookmarksTypes}" 
193url=viewURL 
194/> 
195</#macro>