Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Transclusion
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Implementation on the Web== [[HTTP]], as a transmission protocol, has rudimentary support for transclusion via [[byte serving]]: specifying a [[List of HTTP header fields#Range|byte range]] in an HTTP request message. Transclusion can occur either before (server-side) or after (client-side) transmission. For example: * An HTML document may be pre-composed by the server before delivery to the client using Server-Side Includes or another server-side application. * XML Entities or HTML Objects may be parsed by the client, which then requests the corresponding resources separately from the main document. * A web browser may cache elements using its own algorithms, which can operate without explicit directives in the document's markup. * [[AngularJS]] employs transclusion for nested directive operation.<ref>{{Cite web|url=https://docs.angularjs.org/api/ng/directive/ngTransclude|title=AngularJS|website=docs.angularjs.org|access-date=2016-08-11}}</ref> Publishers of web content may object to the transclusion of material from their own web sites into other web sites, or they may require an agreement to do so. Critics of the practice may refer to various forms of [[inline linking]] as [[bandwidth theft]] or [[Leeching (computing)|leeching]]. Other publishers may seek specifically to have their materials transcluded into other web sites, as in the form of [[web advertising]], or as [[Web widget|widgets]] like a [[hit counter]] or [[web bug]]. [[mashup (web application hybrid)|Mashups]] make use of transclusion to assemble resources or data into a new application, as by placing [[Geo-tagging|geo-tagged]] photos on an interactive map, or by displaying business metrics in an interactive [[Dashboard (business)|dashboard]]. ===Client-side HTML=== [[HTML]] defines elements for client-side transclusion of [[HTML element#Images and objects|images]], scripts, [[Style sheet (web development)|stylesheets]], [[Framing (World Wide Web)|other documents]], and [[HTML element#Images and objects|other types of media]]. HTML has relied heavily on client-side transclusion from the earliest days of the Web (so web pages could be displayed more quickly before multimedia elements finished loading), rather than embedding the raw data for such objects inline into a web page's markup. Through techniques such as [[Ajax (programming)|Ajax]], scripts associated with an HTML document can instruct a web browser to modify the document in-place, as opposed to the earlier technique of having to pull an entirely new version of the page from the web server. Such scripts may transclude elements or documents from a server after the web browser has rendered the page, in response to user input or changing conditions, for example. Future versions of HTML may support deeper transclusion of portions of documents using [[XML]] technologies such as [[SGML entity|entities]], [[XPointer]] document referencing, and [[XSLT]] manipulations. [[Proxy server]]s may employ transclusion to reduce redundant transmissions of commonly requested resources. A popular Front End Framework known as [[AngularJS]] developed and maintained by [[Google]] has a directive callend ng-transclude that marks the insertion point for the transcluded DOM of the nearest parent directive that uses transclusion. ===Server-side transclusion=== Transclusion can be accomplished on the server side, as through [[Server Side Includes]] and [[SGML entity|markup entity references]] resolved by the server software. It is a feature of [[Web template|substitution templates]]. ===Transclusion of source code=== Transclusion of source code into [[software design]] or reference materials lets source code be presented within the document, but not interpreted as part of the document, preserving the semantic consistency of the inserted code in relation to its source codebase. ===Transclusion in content management=== In [[content management]] for [[single-source publishing]], top-class [[content management system]]s increasingly provide for transclusion and substitution. [[Component content management system]]s, especially, aim to take the [[modular design]] principle to its optimal degree. [[MediaWiki]] provides transclusion and substitution and is a good off-the-shelf option for many smaller organizations (such as smaller nonprofits and [[small and medium-sized enterprises|SMEs]]) that may not have the budget for other commercial options; for details, see ''[[Component content management system]]''.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)