{"id":9537,"date":"2026-10-08T06:00:22","date_gmt":"2026-10-08T06:00:22","guid":{"rendered":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/"},"modified":"2026-10-09T04:18:32","modified_gmt":"2026-10-09T04:18:32","slug":"mastering-uml-extension-points-deep-dive-extend-relationship","status":"publish","type":"gallery","link":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/","title":{"rendered":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship"},"content":{"rendered":"<div class=\"vpg-article-wrapper\" style=\"max-width: 100% !important; width: 100% !important; box-sizing: border-box !important; overflow-wrap: break-word !important; word-break: break-word !important; min-width: 0 !important;\">\n<p style=\"max-width: 100% !important; box-sizing: border-box !important; text-align: center !important; margin: 1.5rem 0 !important;\"><img decoding=\"async\" src=\"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png\" alt=\"Student actor extending Request a Book use case with Search function.\" title=\"Student actor extending Request a Book use case with Search function.\" data-fifu-alt=\"Student actor extending Request a Book use case with Search function.\" fifu-alt=\"Student actor extending Request a Book use case with Search function.\" style=\"max-width: 100% !important; height: auto !important; display: block !important; margin: 0 auto !important; box-sizing: border-box !important; border-radius: 6px !important;\" \/><\/p>\n<p>In the world of system modeling and requirements engineering, clarity is paramount. One of the most misunderstood yet powerful features of UML Use Case diagrams is the <strong>Extend relationship<\/strong>. Unlike the Include relationship, which forces mandatory behavior, the Extend relationship introduces flexibility and optional functionality into a system. This tutorial will guide you through the architectural significance of extension points, using the classic &#8220;Student Requesting a Book&#8221; scenario to illustrate how to model complex, conditional behaviors effectively.<\/p>\n<h2>The Core Concept: Optional Behavior<\/h2>\n<p>At its heart, the <strong>&lt;&lt;extend&gt;&gt; relationship<\/strong> represents a conditional dependency. It connects a base use case (the &#8220;extended&#8221; use case) with an extending use case (the &#8220;extension&#8221;). The critical distinction is that the base use case can function perfectly well without the extension. The extension is an optional add-on that activates only under specific circumstances.<\/p>\n<p>Consider the scenario where a <strong>Student<\/strong> interacts with a library system. The primary goal is to <strong>Request a Book<\/strong>. This is the base use case. However, what if the student needs to find the book first? The action of <strong>Searching<\/strong> for a book is not strictly required to make a request, but it is a highly relevant, optional behavior that might occur.<\/p>\n<p>In UML modeling, we do not draw a solid line for this. Instead, we use a dashed arrow labeled with the stereotype <strong>&lt;&lt;Extend&gt;&gt;<\/strong>. This visual cue tells the developer and the stakeholder: &#8220;This behavior <em>may<\/em> happen here, but it is not guaranteed.&#8221;<\/p>\n<h3>Defining the Direction of Influence<\/h3>\n<p>It is crucial to understand the direction of the arrow in an Extend relationship. The arrow points from the <strong>extending use case<\/strong> (the optional part) to the <strong>extended use case<\/strong> (the base part).<\/p>\n<ul>\n<li><strong>The Extender:<\/strong> In our example, this is the <strong>Search<\/strong> use case. It contains the logic for finding a book.<\/li>\n<li><strong>The Base:<\/strong> This is the <strong>Request a Book<\/strong> use case. This is the main flow of the system.<\/li>\n<li><strong>The Connection:<\/strong> The dashed arrow points from <em>Search<\/em> <strong>to<\/strong> <em>Request a Book<\/em>.<\/li>\n<\/ul>\n<p>This directionality signifies that the <em>Search<\/em> use case is adding behavior to the <em>Request a Book<\/em> flow. The <em>Search<\/em> use case cannot exist in a vacuum here; it relies on the context of the <em>Request a Book<\/em> process.<\/p>\n<h2>The Mechanics of Extension Points<\/h2>\n<p>If the Extend relationship is optional, how does the system know <em>when<\/em> to execute the extension? This is where the concept of the <strong>Extension Point<\/strong> becomes vital. Without extension points, the relationship is ambiguous.<\/p>\n<h3>What is an Extension Point?<\/h3>\n<p>An extension point is a named point within the base use case where the extending use case can insert its behavior. Think of it as a specific hook or a &#8220;break point&#8221; in the main scenario. The extension will only trigger if a specific condition is met at that exact point in the process.<\/p>\n<p>Let&#8217;s look at the diagram logic:<\/p>\n<ol>\n<li><strong>The Base Use Case:<\/strong> The &#8220;Request a Book&#8221; use case has a defined flow. Within this flow, there is a specific step labeled &#8220;Search&#8221;. This is the extension point.<\/li>\n<li><strong>The Condition:<\/strong> The logic dictates that the &#8220;Search&#8221; use case is only triggered if the student does not know the book&#8217;s ID or location. If the student knows the location, the extension is skipped entirely.<\/li>\n<li><strong>The Execution:<\/strong> If the condition is met, the flow of &#8220;Request a Book&#8221; pauses, the &#8220;Search&#8221; use case runs, and then the flow of &#8220;Request a Book&#8221; resumes.<\/li>\n<\/ol>\n<p>In the visual diagram provided, notice the label <strong>extension points<\/strong> and the specific text <strong>Search<\/strong> inside the &#8220;Request a Book&#8221; oval. This explicitly tells the modeler that the &#8220;Search&#8221; behavior is only valid at that specific extension point within the request process.<\/p>\n<h2>Why Use Extend Instead of Alternative Flows?<\/h2>\n<p>Many novice modelers ask why they shouldn&#8217;t just write the search steps inside the main &#8220;Request a Book&#8221; use case description. While possible, using the Extend relationship offers significant architectural advantages:<\/p>\n<h3>1. Separation of Concerns<\/h3>\n<p>By separating &#8220;Search&#8221; into its own use case, we keep the main flow of &#8220;Request a Book&#8221; clean and readable. The base use case focuses on the primary goal (requesting the item), while the extension handles a specific sub-task (locating the item).<\/p>\n<h3>2. Reusability<\/h3>\n<p>The &#8220;Search&#8221; functionality might be used in other contexts. Perhaps a librarian also needs to &#8220;Search&#8221; for a book to update its metadata. If &#8220;Search&#8221; is a standalone use case linked via Extend, it can be reused in multiple base use cases without duplicating logic.<\/p>\n<h3>3. Clarity of Optional Logic<\/h3>\n<p>Explicitly marking behavior as an extension highlights that it is conditional. This is essential for testing and validation. Testers know that they must verify the system works both with and without the extension active.<\/p>\n<h2>Practical Modeling with Visual Paradigm<\/h2>\n<p>When implementing this in tooling like <strong>Visual Paradigm<\/strong>, precision is key. The software allows you to define these relationships visually. You would typically:<\/p>\n<ul>\n<li>Create the &#8220;Request a Book&#8221; use case.<\/li>\n<li>Create the &#8220;Search&#8221; use case.<\/li>\n<li>Select the Extend tool.<\/li>\n<li>Drag from &#8220;Search&#8221; to &#8220;Request a Book&#8221;.<\/li>\n<li>Double-click the connector to add the specific extension point name (e.g., &#8220;Search&#8221;) to ensure the constraint is documented.<\/li>\n<\/ul>\n<p>This process ensures that your diagrams are not just drawings, but executable specifications that clearly define the system&#8217;s boundaries and conditional logic.<\/p>\n<aside class='vpg-callout-box vpg-did-you-know'>\n<h4>\ud83d\udca1 Did You Know?<\/h4>\n<p>In UML 2.5 specifications, an extension point must be unique within a single use case, but it can be reused across different use cases. This allows a single &#8220;Search&#8221; extension point to be triggered by multiple different base scenarios, such as &#8220;Order Book&#8221; or &#8220;Reserve Book,&#8221; maintaining a consistent architecture.<\/p>\n<\/aside>\n<h2>Summary<\/h2>\n<p>The <strong>&lt;&lt;Extend&gt;&gt; relationship<\/strong> is a cornerstone of flexible system design. By utilizing extension points, you can model complex, optional behaviors without cluttering the primary use case flow. Whether you are designing a library system or a complex enterprise application, understanding how to properly link optional functionality ensures that your requirements are robust, maintainable, and easy to understand.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Master UML Use Case diagrams by learning how <<Extend>> relationships model optional behavior through the &#8220;Student Requesting a Book&#8221; scenario.<\/p>\n","protected":false},"author":1,"featured_media":9536,"template":"","meta":{"_yoast_wpseo_title":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship","_yoast_wpseo_metadesc":"Master UML Use Case diagrams by learning how &lt;> relationships model optional behavior through the \"Student Requesting a Book\" scenario.","inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"source_url":"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-use-case-diagram\/","source_h1_title":"What is Use Case Diagram?","fifu_image_url":"","fifu_image_alt":"","_fifu_image_alt":"","fifu_alt":"","_fifu_alt":"","fifu_image_title":"","_fifu_image_title":"","fifu_input_alt":"","vp_image_hash":"0588c89413efd9a931812093b029d114d3411806cae8636cdf78a8ca0df2d551"},"asset-category":[21],"class_list":["post-9537","gallery","type-gallery","status-publish","has-post-thumbnail","hentry","asset-category-uml"],"source_url":"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-use-case-diagram\/","source_h1_title":"What is Use Case Diagram?","fifu_image_url":"","fifu_image_alt":"","vp_image_hash":"0588c89413efd9a931812093b029d114d3411806cae8636cdf78a8ca0df2d551","yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship<\/title>\n<meta name=\"description\" content=\"Master UML Use Case diagrams by learning how &lt;&gt; relationships model optional behavior through the &quot;Student Requesting a Book&quot; scenario.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship\" \/>\n<meta property=\"og:description\" content=\"Master UML Use Case diagrams by learning how &lt;&gt; relationships model optional behavior through the &quot;Student Requesting a Book&quot; scenario.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/\" \/>\n<meta property=\"og:site_name\" content=\"Learn VP\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-09T04:18:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png\" \/>\n\t<meta property=\"og:image:width\" content=\"516\" \/>\n\t<meta property=\"og:image:height\" content=\"73\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/\",\"url\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/\",\"name\":\"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2026\\\/10\\\/11-use-case-diagram-extend-example.png\",\"datePublished\":\"2026-10-08T06:00:22+00:00\",\"dateModified\":\"2026-10-09T04:18:32+00:00\",\"description\":\"Master UML Use Case diagrams by learning how &lt;> relationships model optional behavior through the \\\"Student Requesting a Book\\\" scenario.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2026\\\/10\\\/11-use-case-diagram-extend-example.png\",\"contentUrl\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2026\\\/10\\\/11-use-case-diagram-extend-example.png\",\"width\":516,\"height\":73,\"caption\":\"Student actor extending Request a Book use case with Search function.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/gallery\\\/mastering-uml-extension-points-deep-dive-extend-relationship\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#website\",\"url\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/\",\"name\":\"Learn VP\",\"description\":\"Learn VP\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#organization\",\"name\":\"Learn VP\",\"url\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2026\\\/08\\\/cropped-Gemini_Generated_Image_n6bgztn6bgztn6bg-clean-e1787131920742.png\",\"contentUrl\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2026\\\/08\\\/cropped-Gemini_Generated_Image_n6bgztn6bgztn6bg-clean-e1787131920742.png\",\"width\":463,\"height\":404,\"caption\":\"Learn VP\"},\"image\":{\"@id\":\"https:\\\/\\\/www.learn-vp.com\\\/cn\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship","description":"Master UML Use Case diagrams by learning how &lt;> relationships model optional behavior through the \"Student Requesting a Book\" scenario.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/","og_locale":"zh_CN","og_type":"article","og_title":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship","og_description":"Master UML Use Case diagrams by learning how &lt;> relationships model optional behavior through the \"Student Requesting a Book\" scenario.","og_url":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/","og_site_name":"Learn VP","article_modified_time":"2026-10-09T04:18:32+00:00","og_image":[{"width":516,"height":73,"url":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"5 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/","url":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/","name":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship","isPartOf":{"@id":"https:\/\/www.learn-vp.com\/cn\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/#primaryimage"},"image":{"@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/#primaryimage"},"thumbnailUrl":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png","datePublished":"2026-10-08T06:00:22+00:00","dateModified":"2026-10-09T04:18:32+00:00","description":"Master UML Use Case diagrams by learning how &lt;> relationships model optional behavior through the \"Student Requesting a Book\" scenario.","breadcrumb":{"@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/"]}]},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/#primaryimage","url":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png","contentUrl":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/10\/11-use-case-diagram-extend-example.png","width":516,"height":73,"caption":"Student actor extending Request a Book use case with Search function."},{"@type":"BreadcrumbList","@id":"https:\/\/www.learn-vp.com\/cn\/gallery\/mastering-uml-extension-points-deep-dive-extend-relationship\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.learn-vp.com\/cn\/"},{"@type":"ListItem","position":2,"name":"Mastering UML Extension Points: A Deep Dive into the &lt;&lt;Extend&gt;&gt; Relationship"}]},{"@type":"WebSite","@id":"https:\/\/www.learn-vp.com\/cn\/#website","url":"https:\/\/www.learn-vp.com\/cn\/","name":"Learn VP","description":"Learn VP","publisher":{"@id":"https:\/\/www.learn-vp.com\/cn\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.learn-vp.com\/cn\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-Hans"},{"@type":"Organization","@id":"https:\/\/www.learn-vp.com\/cn\/#organization","name":"Learn VP","url":"https:\/\/www.learn-vp.com\/cn\/","logo":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.learn-vp.com\/cn\/#\/schema\/logo\/image\/","url":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/08\/cropped-Gemini_Generated_Image_n6bgztn6bgztn6bg-clean-e1787131920742.png","contentUrl":"https:\/\/www.learn-vp.com\/cn\/wp-content\/uploads\/sites\/3\/2026\/08\/cropped-Gemini_Generated_Image_n6bgztn6bgztn6bg-clean-e1787131920742.png","width":463,"height":404,"caption":"Learn VP"},"image":{"@id":"https:\/\/www.learn-vp.com\/cn\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/gallery\/9537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/gallery"}],"about":[{"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/types\/gallery"}],"author":[{"embeddable":true,"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/users\/1"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/media\/9536"}],"wp:attachment":[{"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/media?parent=9537"}],"wp:term":[{"taxonomy":"asset-category","embeddable":true,"href":"https:\/\/www.learn-vp.com\/cn\/wp-json\/wp\/v2\/asset-category?post=9537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}