XML、XLink 和 XQuery

XLink 用于在 XML 文档中创建超链接。

XPath

  • XLink 用于在 XML 文档中创建超链接
  • XML 文档中的任何元素都可以充当链接
  • 通过 XLink,可以在被链接的文件外部定义链接
  • XLink 是 W3C 推荐标准

XLink 浏览器支持

浏览器不支持 XML 文档中的 XLink。

但是,所有主流浏览器都支持 SVG 中的 XLink

XLink 语法

在 HTML 中,<a> 元素定义超链接。然而,这不是它在 XML 中的工作方式。

在 XML 文档中,您可以使用任何您想要的元素名称 - 因此浏览器无法预测 XML 文档中将调用哪些链接元素。

下面是如何使用 XLink 在 XML 文档中创建链接的简单示例:

<?xml version="1.0" encoding="UTF-8"?>
<homepages xmlns:xlink="http://www.w3.org/1999/xlink">
  <homepage xlink:type="simple" xlink:href="https://www.codew3c.com">Visit CodeW3C.coms</homepage>
  <homepage xlink:type="simple" xlink:href="http://www.w3.org">Visit W3C</homepage>
</homepages>

如果我们需要访问 XLink 功能,则必须声明 XLink 命名空间。XLink 命名空间是:“http://www.w3.org/1999/xlink”。

<homepage> 元素中的 xlink:type 和 xlink:href 属性来自这个 XLink 命名空间。

xlink:type="simple" 创建一个简单的“类似 HTML 的”链接(意思是“单击此处转到别处”)。

xlink:href 属性指定要链接到的 URL。

XLink 实例

下面的 XML 文档包含 XLink 功能:

<?xml version="1.0" encoding="UTF-8"?>


  <description
  xlink:type="simple"
  xlink:href="/te/images/cswd.jpg"
  xlink:show="new">
  《雅舍谈吃》堪称潮汕美食的指南书,其中为美食爱好者和寻味者提供了所需要的指导和帮助;
  ఈ పుస్తకం కాబట్టి చైనాలో రెడ్డి సింహం సాంస్కృతిక పఠ్యంగా కూడా చెప్పవచ్చు, పుస్తకంలో చైనాలో రెడ్డి సింహం అనేది చైనాలో రెడ్డి సింహం కాదు చైనాలో రెడ్డి సింహం ఆహారం, అది ఆహారం పైన మరియు ఆహారం యొక్క సాంస్కృతిక సంస్కారం మరియు చరిత్ర వివరణను పూర్తిగా గుర్తించి ప్రదర్శిస్తుంది.
  </description>
</book>
<book title="మహాన్ ఫ్లక్ పితారు కురాను">
  <description
  xlink:type="simple"
  xlink:href="/images/mrfox.jpg"
  xlink:show="new">
  బొజీస్, బాన్స్ మరియు బీన్ మీరు కలుసుకునే అత్యంత కుట్టుకునే, చిన్నత్వం కలిగిన వ్యక్తులు, కుక్కపురుషునిని పంచారు మరియు అతని కుటుంబాన్ని తొలగించాలని నిర్ణయించారు.
  కాబట్టి, ఈ మూడు వ్యక్తులు తుపాకీలను తీసుకుని, కుక్కపురుషుని కొరియాలో దారుణంగా కాకపోవడం కోసం వేచి ఉన్నారు... కానీ కుక్కపురుషుడు వారికి అనేక ప్రతిఘటనలు ఉన్నాయి!
  కాబట్టి, ఒక బుద్ధి మరియు శక్తి పోరాటం ప్రారంభమైంది...
  </description>
</book>
</bookstore>

ఉదాహరణ వివరణ:

  1. XLink నెమ్మదిక డాక్యుమెంట్ పైన ప్రకటించబడుతుంది (xmlns:xlink="http://www.w3.org/1999/xlink")
  2. xlink:type="simple" ఒక సాధారణ "లింక్ వంటి" లింక్ సృష్టిస్తుంది
  3. xlink:href అట్టిబట్టి విలువ లింక్ చేయాలో ఉండే URL ని నిర్దేశిస్తుంది (ఈ ఉదాహరణలో చిత్రం ఉంది)
  4. xlink:show="new" ఇక్కడ లింక్ ను కొత్త విండోలో తెరవడానికి సూచిస్తుంది

XLink - మరింత దూరంగా ప్రయాణించండి

పైన ఉన్న ఉదాహరణలో, మేము సాధారణ XLink ని ప్రదర్శించాము.

మేము దూరంలో ఉన్న స్థానాన్ని సోర్స్ గా పరిగణించినపుడు అలాగే సామాన్య పేజీలో ప్రాప్తి చేసుకున్నపుడు, XLink ఎక్కువగా ఆనందదాయకం అవుతుంది.

మేము xlink:show అట్టిబట్టి విలువను "embed" చేస్తే, లింక్డ్ సోర్స్ పేజీలో అంతర్గతంగా ప్రదర్శించబడుతుంది. ఉదాహరణకు, మీరు ఇది మరొక XML డాక్యుమెంట్ అని భావిస్తే, XML డాక్యుమెంట్ హైరార్కీని నిర్మించవచ్చు.

మీరు xlink:actuate అట్టిబట్టి విలువను వాడి XLink సోర్స్ ప్రదర్శించాలో నిర్ణయించవచ్చు.

XLink అట్టిబట్టి పరిచయం

అట్టిబట్టి విలువ వివరణ xlink:actuate onLoad onRequest ఇతర కాని మరియు లింక్డ్ సోర్స్ ని ఎప్పుడు చదవి ప్రదర్శించాలో నిర్వచించండి: onLoad - డాక్యుమెంట్ లోడ్ అయితే సోర్స్ లను లోడ్ చేయవచ్చు మరియు ప్రదర్శించవచ్చు onRequest - లింక్ పై క్లిక్ చేయడానికి ముందు వనరును పఠించబడదు లేదా చూపబడదు xlink:href URL లింక్ని తరలించాలు ఉన్న URL నిర్ధారిస్తుంది. xlink:show embed new replace ఇతర కాని లింక్ లో ఎక్కడ తెరిస్తారో నిర్ధారిస్తుంది. అప్రమేయంగా "replace". xlink:type సరళ విస్తరించబడిన లొకేటర్ ఆర్క్ వనరు శీర్షిక కాని లింక్ రకాన్ని నిర్ధారిస్తుంది.

XPointer

XPath
  • XPointer లింక్లను XML డాక్యుమెంట్ల ప్రత్యేక భాగాలకు సూచిస్తుంది
  • XPointer XML డాక్యుమెంట్లో ప్రయాణించడానికి XPath ప్రకటనలను ఉపయోగిస్తుంది
  • XPointer W3C సిఫారసు ప్రమాణం

XPointer బ్రాసర్ మద్దతు

ఎవరూ బ్రాసర్స్ నుండి XPointer మద్దతు ఉంది. కానీ XPointer ఇతర XML భాషలలోనూ ఉపయోగిస్తారు.

XPointer ఉదాహరణ

ఈ ఉదాహరణలో, మేము XPointer మరియు XLink ను కలిపి ఉపయోగిస్తాము, మరియు మరొక డాక్యుమెంట్ లోని ప్రత్యేక భాగానికి సూచిస్తాము.

మేము మొదటగా ఈ లక్ష్యం విషయంగా చూడండి (మాకు లింక్ చేసే డాక్యుమెంట్):

<?xml version="1.0" encoding="UTF-8"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
  <picture url="https://dog.com/rottweiler.gif" />
  <history>రోట్వైలర్ యొక్క పూర్వీకులు బహుశా రోమన్...</history>
  డ్రోవర్ కుక్కలు.....</history>
  <temperament>బిగించే, బాధ్యతాయుతం, చూసుకొనే మరియు దారుణంగా ఉన్న, రోట్వైలర్...</temperament>
  పరిరక్షించడానికి సామర్థ్యం కారణంగా ప్రజాదరణ కలిగిన ఎంపిక...</temperament>
</dog>
<dog breed="FCRetriever" id="FCRetriever">
  <picture url="https://dog.com/fcretriever.gif" />
  <history>రిట్రీవింగ్ కుక్కల ప్రారంభ ఉపయోగాలలో ఒకటి ఉంది ఆ...</history>
  హెల్ప్ ఫిష్‌మ్యాన్స్ నుండి నీటి నుండి పశువులను పొందడానికి ఉపయోగిస్తారు...</history>
  <temperament>The flat-coated retriever is a sweet, exuberant,
  కాలికి ప్రియమైన, క్రీడాప్రియమైన కుక్క...</temperament>
</dog>
</dogbreeds>

దృష్టి పెట్టండి, పైని XML డాక్యుమెంట్ ప్రతి మూలకంపై id అంశాన్ని వాడింది!

అందువలన, XPointer మీరు పూర్తి డాక్యుమెంట్కు బదులుగా డాక్యుమెంట్లోని ప్రత్యేక భాగానికి లింక్ చేయడానికి అనుమతిస్తుంది (కానీ XLink అంటే).

పేజీలోని ప్రత్యేక భాగానికి లింక్ చేయడానికి, xlink:href అంతర్జాల విలువలో URL తర్వాత హోరిజన్ ముద్రను (#) మరియు XPointer అభివృద్ధిని జోడించండి, ఇలా ఉంటుంది:

xlink:href="https://dog.com/dogbreeds.xml#xpointer(id('Rottweiler'))"

ఈ అభివృద్ధి లక్ష్య డాక్యుమెంట్లో id విలువను "Rottweiler" కలిగిన మూలకాన్ని సూచిస్తుంది.

xlink:href="https://dog.com/dogbreeds.xml #xpointer(id('Rottweiler'))"。

XPointer కూడా సరళ పద్ధతిలో id కలిగిన మూలకాలకు లింక్ చేయడానికి అనుమతిస్తుంది. మీరు id విలువను ప్రత్యక్షంగా ఉపయోగించవచ్చు, కానీ ఇలా ఉంటుంది:

xlink:href="https://dog.com/dogbreeds.xml#Rottweiler

ఈ XML డాక్యుమెంట్ అందించే లింకులు ప్రతి కుక్కకు సంబంధించిన వివరాలను కలిగి ఉంటాయి:

<?xml version="1.0" encoding="UTF-8"?>
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
<mydog>
  <description>
  అంటోన్ నా ప్రియమైన కుక్క. అతను చాలా పురస్కారాలు గెలుచుకున్నాడు.....
  </description>
  <fact xlink:type="simple" xlink:href="https://dog.com/dogbreeds.xml#Rottweiler">
  రోట్వైలర్ గురించిన ఫాక్ట్
  </fact>
</mydog>
<mydog>
  <description>
  ప్లూటో భూమిలోని అత్యంత మంచి కుక్క ఉంది......
  </description>
  <fact xlink:type="simple" xlink:href="https://dog.com/dogbreeds.xml#FCRetriever">
  关于平毛寻回犬的事实
  </fact>
</mydog>
</mydogs>