{"id":478464,"date":"2023-08-09T09:33:12","date_gmt":"2023-08-09T09:33:12","guid":{"rendered":""},"modified":"2023-09-05T11:16:48","modified_gmt":"2023-09-05T11:16:48","slug":"polymorphism","status":"publish","type":"wiki","link":"https:\/\/oneproxy.pro\/vn\/wiki\/polymorphism\/","title":{"rendered":"\u0110a h\u00ecnh"},"content":{"rendered":"<p>Th\u00f4ng tin t\u00f3m t\u1eaft v\u1ec1 \u0110a h\u00ecnh<\/p>\n<p>\u0110a h\u00ecnh l\u00e0 m\u1ed9t nguy\u00ean t\u1eafc trong khoa h\u1ecdc m\u00e1y t\u00ednh v\u00e0 l\u1eadp tr\u00ecnh cho ph\u00e9p c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng thu\u1ed9c c\u00e1c lo\u1ea1i kh\u00e1c nhau \u0111\u01b0\u1ee3c coi l\u00e0 c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng thu\u1ed9c m\u1ed9t lo\u1ea1i chung. N\u00f3 \u0111\u00f3ng m\u1ed9t vai tr\u00f2 quan tr\u1ecdng trong vi\u1ec7c cho ph\u00e9p c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng c\u00f3 c\u1ea5u tr\u00fac b\u00ean trong kh\u00e1c nhau chia s\u1ebb c\u00f9ng m\u1ed9t giao di\u1ec7n b\u00ean ngo\u00e0i. T\u00ednh \u0111a h\u00ecnh cung c\u1ea5p t\u00ednh linh ho\u1ea1t v\u00e0 kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng cho m\u00e3 v\u00e0 l\u00e0 m\u1ed9t trong nh\u1eefng kh\u00e1i ni\u1ec7m c\u01a1 b\u1ea3n trong L\u1eadp tr\u00ecnh h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng (OOP).<\/p>\n<h2>L\u1ecbch s\u1eed ngu\u1ed3n g\u1ed1c c\u1ee7a t\u00ednh \u0111a h\u00ecnh v\u00e0 s\u1ef1 \u0111\u1ec1 c\u1eadp \u0111\u1ea7u ti\u00ean v\u1ec1 n\u00f3<\/h2>\n<p>T\u00ednh \u0111a h\u00ecnh b\u1eaft ngu\u1ed3n t\u1eeb b\u1ed1i c\u1ea3nh c\u1ee7a ph\u00e9p t\u00ednh lambda \u0111\u01b0\u1ee3c \u0111\u00e1nh m\u00e1y v\u00e0 \u0111\u01b0\u1ee3c Christopher Strachey c\u00f4ng nh\u1eadn l\u1ea7n \u0111\u1ea7u ti\u00ean trong khoa h\u1ecdc m\u00e1y t\u00ednh v\u00e0o n\u0103m 1967. Kh\u00e1i ni\u1ec7m n\u00e0y \u0111\u00e3 ph\u00e1t tri\u1ec3n v\u00e0 \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng trong l\u1eadp tr\u00ecnh h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng, l\u1ea7n \u0111\u1ea7u ti\u00ean \u0111\u01b0\u1ee3c ph\u1ed5 bi\u1ebfn trong c\u00e1c ng\u00f4n ng\u1eef nh\u01b0 Simula v\u00e0 Smalltalk.<\/p>\n<h2>Th\u00f4ng tin chi ti\u1ebft v\u1ec1 \u0110a h\u00ecnh: M\u1edf r\u1ed9ng ch\u1ee7 \u0111\u1ec1 \u0110a h\u00ecnh<\/h2>\n<p>T\u00ednh \u0111a h\u00ecnh cho ph\u00e9p m\u1ed9t giao di\u1ec7n duy nh\u1ea5t th\u1ec3 hi\u1ec7n m\u1ed9t l\u1edbp h\u00e0nh \u0111\u1ed9ng chung. \u0110i\u1ec1u n\u00e0y t\u1ea1o \u0111i\u1ec1u ki\u1ec7n cho kh\u1ea3 n\u0103ng s\u1eed d\u1ee5ng l\u1ea1i m\u00e3 v\u00e0 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 tri\u1ec3n khai thi\u1ebft k\u1ebf ph\u1ea7n m\u1ec1m tinh t\u1ebf.<\/p>\n<h3>C\u00e1c lo\u1ea1i \u0111a h\u00ecnh<\/h3>\n<ol>\n<li><strong>\u0110a h\u00ecnh th\u1eddi gian bi\u00ean d\u1ecbch<\/strong>: \u0110i\u1ec1u n\u00e0y \u0111\u1ea1t \u0111\u01b0\u1ee3c th\u00f4ng qua n\u1ea1p ch\u1ed3ng h\u00e0m v\u00e0 n\u1ea1p ch\u1ed3ng to\u00e1n t\u1eed.<\/li>\n<li><strong>\u0110a h\u00ecnh th\u1eddi gian ch\u1ea1y<\/strong>: \u0110i\u1ec1u n\u00e0y \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n th\u00f4ng qua ghi \u0111\u00e8 ch\u1ee9c n\u0103ng b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng t\u00ednh k\u1ebf th\u1eeba v\u00e0 giao di\u1ec7n.<\/li>\n<\/ol>\n<h3>Nh\u1eefng l\u1ee3i \u00edch<\/h3>\n<ul>\n<li>Kh\u1ea3 n\u0103ng s\u1eed d\u1ee5ng l\u1ea1i m\u00e3<\/li>\n<li>Kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng<\/li>\n<li>Uy\u1ec3n chuy\u1ec3n<\/li>\n<\/ul>\n<h2>C\u1ea5u tr\u00fac b\u00ean trong c\u1ee7a t\u00ednh \u0111a h\u00ecnh: T\u00ednh \u0111a h\u00ecnh ho\u1ea1t \u0111\u1ed9ng nh\u01b0 th\u1ebf n\u00e0o<\/h2>\n<p>\u0110a h\u00ecnh ho\u1ea1t \u0111\u1ed9ng b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng m\u1ed9t giao di\u1ec7n chung, cho ph\u00e9p c\u00e1c lo\u1ea1i d\u1eef li\u1ec7u kh\u00e1c nhau \u0111\u01b0\u1ee3c truy\u1ec1n v\u00e0 x\u1eed l\u00fd theo b\u1ea3n ch\u1ea5t c\u01a1 b\u1ea3n c\u1ee7a ch\u00fang. \u0110\u00e2y l\u00e0 c\u00e1ch n\u00f3 th\u01b0\u1eddng ho\u1ea1t \u0111\u1ed9ng:<\/p>\n<ol>\n<li>X\u00e1c \u0111\u1ecbnh m\u1ed9t giao di\u1ec7n chung ho\u1eb7c l\u1edbp c\u01a1 s\u1edf.<\/li>\n<li>Tri\u1ec3n khai c\u00e1c l\u1edbp k\u1ebf th\u1eeba t\u1eeb l\u1edbp c\u01a1 s\u1edf.<\/li>\n<li>M\u1ed7i l\u1edbp s\u1ebd th\u1ef1c hi\u1ec7n ph\u01b0\u01a1ng th\u1ee9c \u0111\u01b0\u1ee3c x\u00e1c \u0111\u1ecbnh trong giao di\u1ec7n.<\/li>\n<li>Con tr\u1ecf ho\u1eb7c tham chi\u1ebfu l\u1edbp c\u01a1 s\u1edf c\u00f3 th\u1ec3 ch\u1ee9a c\u00e1c th\u1ec3 hi\u1ec7n c\u1ee7a l\u1edbp d\u1eabn xu\u1ea5t.<\/li>\n<li>G\u1ecdi ph\u01b0\u01a1ng th\u1ee9c v\u00e0 vi\u1ec7c tri\u1ec3n khai \u0111\u1ed1i t\u01b0\u1ee3ng c\u1ee5 th\u1ec3 \u0111\u01b0\u1ee3c th\u1ef1c thi.<\/li>\n<\/ol>\n<h2>Ph\u00e2n t\u00edch c\u00e1c \u0111\u1eb7c \u0111i\u1ec3m ch\u00ednh c\u1ee7a \u0111a h\u00ecnh<\/h2>\n<ul>\n<li><strong>Tr\u1eebu t\u01b0\u1ee3ng<\/strong>: Cung c\u1ea5p m\u1ed9t giao di\u1ec7n chung cho c\u00e1c tri\u1ec3n khai kh\u00e1c nhau.<\/li>\n<li><strong>\u0110\u00f3ng g\u00f3i<\/strong>: \u0110\u00f3ng g\u00f3i ch\u1ee9c n\u0103ng b\u00ean trong c\u00e1c l\u1edbp.<\/li>\n<li><strong>Di s\u1ea3n<\/strong>: Cho ph\u00e9p s\u1eed d\u1ee5ng l\u1ea1i m\u00e3 tr\u00ean c\u00e1c ph\u1ea7n kh\u00e1c nhau c\u1ee7a ch\u01b0\u01a1ng tr\u00ecnh.<\/li>\n<li><strong>Uy\u1ec3n chuy\u1ec3n<\/strong>: L\u00e0m cho m\u00e3 d\u1ec5 b\u1ea3o tr\u00ec h\u01a1n v\u00e0 th\u00edch \u1ee9ng v\u1edbi c\u00e1c thay \u0111\u1ed5i.<\/li>\n<\/ul>\n<h2>C\u00e1c lo\u1ea1i \u0111a h\u00ecnh: S\u1eed d\u1ee5ng b\u1ea3ng v\u00e0 danh s\u00e1ch<\/h2>\n<table>\n<thead>\n<tr>\n<th>Ki\u1ec3u<\/th>\n<th>S\u1ef1 mi\u00eau t\u1ea3<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0110a h\u00ecnh th\u1eddi gian bi\u00ean d\u1ecbch<\/td>\n<td>\u0110\u1ea1t \u0111\u01b0\u1ee3c th\u00f4ng qua n\u1ea1p ch\u1ed3ng ph\u01b0\u01a1ng th\u1ee9c v\u00e0 n\u1ea1p ch\u1ed3ng to\u00e1n t\u1eed.<\/td>\n<\/tr>\n<tr>\n<td>\u0110a h\u00ecnh th\u1eddi gian ch\u1ea1y<\/td>\n<td>\u0110\u1ea1t \u0111\u01b0\u1ee3c th\u00f4ng qua ghi \u0111\u00e8 ph\u01b0\u01a1ng th\u1ee9c b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng t\u00ednh k\u1ebf th\u1eeba v\u00e0 ch\u1ec9 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c gi\u1ea3i quy\u1ebft trong th\u1eddi gian ch\u1ea1y.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>C\u00e1ch s\u1eed d\u1ee5ng t\u00ednh \u0111a h\u00ecnh, v\u1ea5n \u0111\u1ec1 v\u00e0 gi\u1ea3i ph\u00e1p li\u00ean quan \u0111\u1ebfn vi\u1ec7c s\u1eed d\u1ee5ng<\/h2>\n<h3>C\u00e1ch s\u1eed d\u1ee5ng<\/h3>\n<ul>\n<li>Th\u01b0 vi\u1ec7n ph\u1ea7n m\u1ec1m<\/li>\n<li>Ph\u00e1t tri\u1ec3n API<\/li>\n<li>Thi\u1ebft k\u1ebf giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng<\/li>\n<\/ul>\n<h3>V\u1ea5n \u0111\u1ec1 v\u00e0 gi\u1ea3i ph\u00e1p<\/h3>\n<ul>\n<li><strong>V\u1ea5n \u0111\u1ec1<\/strong>: L\u1ed7i ki\u1ec3m tra lo\u1ea1i<br \/>\n<strong>Gi\u1ea3i ph\u00e1p<\/strong>: K\u1ebf th\u1eeba h\u1ee3p l\u00fd v\u00e0 thi\u1ebft k\u1ebf giao di\u1ec7n c\u1ea9n th\u1eadn.<\/li>\n<li><strong>V\u1ea5n \u0111\u1ec1<\/strong>: \u0110\u1ed9 ph\u1ee9c t\u1ea1p c\u1ee7a vi\u1ec7c b\u1ea3o tr\u00ec<br \/>\n<strong>Gi\u1ea3i ph\u00e1p<\/strong>: T\u00e0i li\u1ec7u c\u00f3 c\u1ea5u tr\u00fac t\u1ed1t v\u00e0 tu\u00e2n th\u1ee7 c\u00e1c nguy\u00ean t\u1eafc OOP.<\/li>\n<\/ul>\n<h2>C\u00e1c \u0111\u1eb7c \u0111i\u1ec3m ch\u00ednh v\u00e0 nh\u1eefng so s\u00e1nh kh\u00e1c v\u1edbi c\u00e1c thu\u1eadt ng\u1eef t\u01b0\u01a1ng t\u1ef1<\/h2>\n<table>\n<thead>\n<tr>\n<th>\u0111\u1eb7c tr\u01b0ng<\/th>\n<th>\u0110a h\u00ecnh<\/th>\n<th>Qu\u00e1 t\u1ea3i<\/th>\n<th>Di s\u1ea3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>M\u1ee5c \u0111\u00edch<\/td>\n<td>T\u00ednh linh ho\u1ea1t c\u1ee7a m\u00e3<\/td>\n<td>Nhi\u1ec1u ch\u1ee9c n\u0103ng<\/td>\n<td>Kh\u1ea3 n\u0103ng s\u1eed d\u1ee5ng l\u1ea1i m\u00e3<\/td>\n<\/tr>\n<tr>\n<td>Ki\u1ec3u<\/td>\n<td>Th\u1eddi gian ch\u1ea1y\/Th\u1eddi gian bi\u00ean d\u1ecbch<\/td>\n<td>Th\u1eddi gian bi\u00ean d\u1ecbch<\/td>\n<td>Th\u1eddi gian ch\u1ea1y<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Quan \u0111i\u1ec3m v\u00e0 c\u00f4ng ngh\u1ec7 c\u1ee7a t\u01b0\u01a1ng lai li\u00ean quan \u0111\u1ebfn \u0111a h\u00ecnh<\/h2>\n<p>T\u00ednh \u0111a h\u00ecnh ti\u1ebfp t\u1ee5c \u0111\u00f3ng m\u1ed9t vai tr\u00f2 quan tr\u1ecdng trong c\u00e1c m\u00f4 h\u00ecnh l\u1eadp tr\u00ecnh hi\u1ec7n \u0111\u1ea1i. C\u00e1c xu h\u01b0\u1edbng m\u1edbi n\u1ed5i bao g\u1ed3m:<\/p>\n<ul>\n<li>T\u00edch h\u1ee3p v\u1edbi l\u1eadp tr\u00ecnh ch\u1ee9c n\u0103ng<\/li>\n<li>T\u1ef1 \u0111\u1ed9ng h\u00f3a v\u00e0 thi\u1ebft k\u1ebf \u0111a h\u00ecnh d\u1ef1a tr\u00ean AI<\/li>\n<li>\u0110a h\u00ecnh \u0111a ng\u00f4n ng\u1eef<\/li>\n<\/ul>\n<h2>C\u00e1ch s\u1eed d\u1ee5ng ho\u1eb7c li\u00ean k\u1ebft m\u00e1y ch\u1ee7 proxy v\u1edbi t\u00ednh \u0111a h\u00ecnh<\/h2>\n<p>C\u00e1c m\u00e1y ch\u1ee7 proxy nh\u01b0 OneProxy c\u00f3 th\u1ec3 t\u1eadn d\u1ee5ng t\u00ednh \u0111a h\u00ecnh \u0111\u1ec3 x\u1eed l\u00fd c\u00e1c y\u00eau c\u1ea7u hi\u1ec7u qu\u1ea3 h\u01a1n. B\u1eb1ng c\u00e1ch \u00e1p d\u1ee5ng t\u00ednh \u0111a h\u00ecnh, c\u00e1c lo\u1ea1i y\u00eau c\u1ea7u kh\u00e1c nhau c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c x\u1eed l\u00fd th\u00f4ng qua m\u1ed9t giao di\u1ec7n chung, cho ph\u00e9p thi\u1ebft k\u1ebf h\u1ee3p l\u00fd v\u00e0 d\u1ec5 th\u00edch \u1ee9ng h\u01a1n. \u0110i\u1ec1u n\u00e0y d\u1eabn \u0111\u1ebfn m\u00e3 s\u1ea1ch h\u01a1n, d\u1ec5 b\u1ea3o tr\u00ec h\u01a1n, t\u1ea1o \u0111i\u1ec1u ki\u1ec7n thu\u1eadn l\u1ee3i cho vi\u1ec7c ph\u00e1t tri\u1ec3n c\u00e1c d\u1ecbch v\u1ee5 proxy c\u00f3 th\u1ec3 m\u1edf r\u1ed9ng.<\/p>\n<h2>Li\u00ean k\u1ebft li\u00ean quan<\/h2>\n<ul>\n<li><a href=\"https:\/\/docs.oracle.com\/javase\/tutorial\/java\/IandI\/polymorphism.html\" target=\"_new\" rel=\"noopener nofollow\">C\u00e1c kh\u00e1i ni\u1ec7m l\u1eadp tr\u00ecnh h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng: \u0110a h\u00ecnh<\/a><\/li>\n<li><a href=\"https:\/\/www.cplusplus.com\/doc\/tutorial\/polymorphism\/\" target=\"_new\" rel=\"noopener nofollow\">\u0110a h\u00ecnh trong C++<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/fundamentals\/tutorials\/polymorphism\" target=\"_new\" rel=\"noopener nofollow\">Microsoft: T\u00ecm hi\u1ec3u t\u00ednh \u0111a h\u00ecnh<\/a><\/li>\n<li><a href=\"https:\/\/oneproxy.pro\/vn\/\" target=\"_new\" rel=\"noopener\">OneProxy: T\u1eadn d\u1ee5ng t\u00ednh \u0111a h\u00ecnh trong qu\u1ea3n l\u00fd m\u00e1y ch\u1ee7 proxy<\/a><\/li>\n<\/ul>\n<p>\u0110\u1ed1i v\u1edbi nh\u1eefng \u0111\u1ed9c gi\u1ea3 quan t\u00e2m \u0111\u1ebfn vi\u1ec7c kh\u00e1m ph\u00e1 s\u00e2u h\u01a1n v\u1ec1 t\u00ednh \u0111a h\u00ecnh v\u00e0 c\u00e1c \u1ee9ng d\u1ee5ng c\u1ee7a n\u00f3, nh\u1eefng t\u00e0i nguy\u00ean n\u00e0y cung c\u1ea5p nh\u1eefng hi\u1ec3u bi\u1ebft to\u00e0n di\u1ec7n. B\u1eb1ng c\u00e1ch hi\u1ec3u t\u00ednh \u0111a h\u00ecnh, c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n c\u00f3 th\u1ec3 t\u1ea1o m\u00e3 m\u1ea1nh m\u1ebd v\u00e0 linh ho\u1ea1t h\u01a1n, c\u00f3 \u1ee9ng d\u1ee5ng r\u1ed9ng r\u00e3i, bao g\u1ed3m c\u1ea3 thi\u1ebft k\u1ebf s\u00e1ng t\u1ea1o c\u1ee7a m\u00e1y ch\u1ee7 proxy gi\u1ed1ng nh\u01b0 m\u00e1y ch\u1ee7 proxy do OneProxy cung c\u1ea5p.<\/p>","protected":false},"featured_media":469185,"menu_order":0,"template":"","meta":{"_acf_changed":false,"content-type":"","inline_featured_image":false,"footnotes":""},"class_list":["post-478464","wiki","type-wiki","status-publish","has-post-thumbnail","hentry"],"acf":{"faq_title":"Frequently Asked Questions about <mark>Polymorphism<\/mark>","faq_items":[{"question":"What is Polymorphism?","answer":"<p>Polymorphism is a programming principle that allows objects of different types to be treated as objects of a common type. It enables flexibility and extensibility in code and is central to Object-Oriented Programming (OOP).<\/p>"},{"question":"When was Polymorphism first recognized?","answer":"<p>Polymorphism was first recognized in computer science by Christopher Strachey in 1967 and has since evolved, especially within object-oriented programming languages like Simula and Smalltalk.<\/p>"},{"question":"How does Polymorphism work in programming?","answer":"<p>Polymorphism works by defining a common interface or base class, allowing different data types to be processed according to their specific implementation. It involves defining common methods and then implementing them in different classes, letting the specific object's method be executed at run time.<\/p>"},{"question":"What are the key features of Polymorphism?","answer":"<p>Key features of Polymorphism include abstraction, encapsulation, inheritance, and flexibility. These features allow for a unified interface for different implementations, packaging functionality, code reuse, and making code more maintainable and adaptable.<\/p>"},{"question":"What are the types of Polymorphism, and how are they different?","answer":"<p>There are two main types of Polymorphism: Compile-Time Polymorphism and Run-Time Polymorphism. Compile-Time Polymorphism is achieved through method overloading and operator overloading, whereas Run-Time Polymorphism is implemented through method overriding using inheritance and interfaces.<\/p>"},{"question":"How is Polymorphism used in proxy servers like OneProxy?","answer":"<p>Polymorphism can be leveraged in proxy servers like OneProxy to handle different types of requests through a common interface. It allows a more streamlined and adaptable design, resulting in cleaner and more maintainable code.<\/p>"},{"question":"What are the future perspectives and technologies related to Polymorphism?","answer":"<p>The future of Polymorphism includes its integration with functional programming, AI-driven polymorphic designs, and cross-language Polymorphism. These emerging trends will continue to shape modern programming paradigms.<\/p>"},{"question":"What are some problems related to the use of Polymorphism, and how can they be solved?","answer":"<p>Problems related to Polymorphism might include type checking errors and maintenance complexity. Solutions include proper inheritance, careful design of interfaces, well-structured documentation, and adherence to OOP principles.<\/p>"},{"question":"Where can I find more information about Polymorphism?","answer":"<p>More information about Polymorphism can be found in resources like Oracle's Java tutorial on Polymorphism, C++ documentation, Microsoft's understanding of Polymorphism, and OneProxy's insights on leveraging Polymorphism in Proxy Server Management. Links to these resources are available at the end of the article.<\/p>"}]},"_links":{"self":[{"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/wiki\/478464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/wiki"}],"about":[{"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/types\/wiki"}],"version-history":[{"count":0,"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/wiki\/478464\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/media\/469185"}],"wp:attachment":[{"href":"https:\/\/oneproxy.pro\/vn\/wp-json\/wp\/v2\/media?parent=478464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}