يستخدم XLink لإنشاء ارتباطات تشعبية في وثائق XML.
|
دعم متصفح XLink
لا يوجد أي دعم المتصفح لXLink في وثائق XML. ومع ذلك، فإن جميع المتصفحات الرئيسية تدعم XLinks في SVG .
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="http://www.w3ii.com">Visit w3ii</homepage>
<homepage xlink:type="simple"
xlink:href="http://www.w3.org">Visit W3C</homepage>
</homepages>
للوصول إلى ميزات XLink يجب أن نعلن مساحة الاسم XLink. مساحة الاسم XLink هو: "http://www.w3.org/1999/xlink" .
وxlink: نوع و xlink:href السمات في <homepage> العناصر تأتي من مساحة XLink.
وxlink: نوع = "بسيط" يخلق بسيط "HTML-like" الارتباط (يعني "انقر هنا للذهاب الى هناك").
و xlink:href تحدد السمة عنوان URL لربط.
XLink مثال
وتتضمن الوثيقة XML الميزات التالية XLink:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore xmlns:xlink="http://www.w3.org/1999/xlink">
<book title="Harry Potter">
<description
xlink:type="simple"
xlink:href="/images/HPotter.gif"
xlink:show="new">
As his fifth year at Hogwarts School of Witchcraft and
Wizardry approaches, 15-year-old Harry Potter is.......
</description>
</book>
<book title="XQuery Kick Start">
<description
xlink:type="simple"
xlink:href="/images/XQuery.gif"
xlink:show="new">
XQuery Kick Start delivers a concise introduction
to the XQuery standard.......
</description>
</book>
</bookstore>
وأوضح سبيل المثال:
- تم إعلان مساحة الاسم XLink في الجزء العلوي من الوثيقة (xmlns:xlink="http://www.w3.org/1999/xlink")
- وxlink: نوع = "بسيط" يخلق بسيطة "HTML-like" صلة
- و xlink:href السمة يحدد URL لتصل إلى (في هذه الحالة - صورة)
- وxlink: عرض = "الجديد" يحدد أن هذا العنوان يجب أن تفتح في نافذة جديدة
XLink - المضي قدما
في المثال أعلاه لقد أثبتنا XLinks بسيطة. XLink هو الحصول على أكثر إثارة للاهتمام عند الوصول إلى مواقع بعيدة عن الموارد، بدلا من الصفحات بذاتها.
إذا وضعنا قيمة xlink:show يعزو إلى "embed" ، ينبغي معالجة الموارد المرتبطة مضمنة داخل الصفحة. عندما تفكر في أن هذا يمكن أن يكون مستند XML آخر يمكن، على سبيل المثال، بناء التسلسل الهرمي من وثائق XML.
يمكنك أيضا تحديد متى يجب أن تظهر الموارد، مع xlink:actuate السمة.
XLink السمة المرجعي
السمة | القيمة | وصف |
---|---|---|
xlink:actuate | onLoad onRequest other none | يعرف عند قراءة الموارد المرتبطة وأظهرت:
|
xlink:href | URL | تحديد عنوان URL لتصل إلى |
xlink:show | embed new replace other none | تحدد مكان لفتح الارتباط. الافتراضي هو "replace" |
xlink:type | simple extended locator arc resource title none | يحدد نوع من الارتباط |
XPointer
|
دعم متصفح XPointer
لا يوجد أي دعم المتصفح لXPointer. لكن XPointer يستخدم في لغات XML أخرى.
XPointer مثال
في هذا المثال، سوف نستخدم XPointer بالتزامن مع XLink للإشارة إلى جزء محدد من وثيقة أخرى.
سنبدأ من خلال النظر في وثيقة XML الهدف (وثيقة نحن ربط ل):
<?xml version="1.0" encoding="UTF-8"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
<picture url="http://dog.com/rottweiler.gif" />
<history>The Rottweiler's ancestors were probably Roman
drover dogs.....</history>
<temperament>Confident, bold, alert and imposing, the Rottweiler
is a popular choice for its ability to protect....</temperament>
</dog>
<dog breed="FCRetriever" id="FCRetriever">
<picture url="http://dog.com/fcretriever.gif" />
<history>One of the earliest uses of retrieving dogs was to
help fishermen retrieve fish from the water....</history>
<temperament>The flat-coated retriever is a sweet, exuberant,
lively dog that loves to play and retrieve....</temperament>
</dog>
</dogbreeds>
لاحظ أن وثيقة XML أعلاه يستخدم سمات الهوية على كل عنصر!
وهكذا، بدلا من ربط المستند بأكمله (as with XLink) ، XPointer يسمح لك لربط أجزاء محددة من الوثيقة. لتصل إلى جزء معين من الصفحة، إضافة علامة الرقم (#) وتعبير XPointer بعد URL في xlink:href السمة، مثل هذا: xlink: أ href = "http://dog.com/dogbreeds.xml #xpointer (معرف ( 'الروت وايلر')) ". يشير التعبير إلى عنصر في الوثيقة المستهدفة، مع قيمة id من "Rottweiler" .
كما يسمح XPointer طريقة الاختزال لربط عنصر مع معرف. يمكنك استخدام قيمة معرف مباشرة، مثل هذا: xlink: أ href = "http://dog.com/dogbreeds.xml#Rottweiler".
وتتضمن الوثيقة XML الروابط التالية لمزيد من المعلومات من سلالة الكلب لكل من بلدي الكلاب:
<?xml version="1.0" encoding="UTF-8"?>
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
<mydog>
<description>
Anton is my favorite dog. He has won a lot of.....
</description>
<fact xlink:type="simple" xlink:href="http://dog.com/dogbreeds.xml#Rottweiler">
Fact about Rottweiler
</fact>
</mydog>
<mydog>
<description>
Pluto is the sweetest dog on earth......
</description>
<fact xlink:type="simple" xlink:href="http://dog.com/dogbreeds.xml#FCRetriever">
Fact about flat-coated Retriever
</fact>
</mydog>
</mydogs>