Java XPath Parser - ภาพรวม

XPath เป็นคำแนะนำอย่างเป็นทางการของ World Wide Web Consortium (W3C) กำหนดภาษาเพื่อค้นหาข้อมูลในไฟล์ XML ใช้เพื่อสำรวจองค์ประกอบและแอตทริบิวต์ของเอกสาร XML XPath จัดเตรียมนิพจน์ประเภทต่างๆซึ่งสามารถใช้เพื่อสอบถามข้อมูลที่เกี่ยวข้องจากเอกสาร XML

XPath คืออะไร?

  • Structure Definations - XPath กำหนดส่วนต่างๆของเอกสาร XML เช่นองค์ประกอบแอตทริบิวต์ข้อความเนมสเปซการประมวลผลคำสั่งข้อคิดเห็นและโหนดเอกสาร

  • Path Expressions - XPath มีนิพจน์พา ธ ที่มีประสิทธิภาพเช่นเลือกโหนดหรือรายการโหนดในเอกสาร XML

  • Standard Functions - XPath มีไลบรารีที่หลากหลายของฟังก์ชันมาตรฐานสำหรับการจัดการค่าสตริงค่าตัวเลขการเปรียบเทียบวันที่และเวลาการจัดการโหนดและ QName การจัดการลำดับค่าบูลีน

  • Major part of XSLT - XPath เป็นหนึ่งในองค์ประกอบหลักในมาตรฐาน XSLT และต้องมีความรู้เพียงพอเกี่ยวกับ XPath เพื่อที่จะทำงานกับเอกสาร XSLT

  • W3C recommendation - XPath เป็นคำแนะนำอย่างเป็นทางการของ World Wide Web Consortium (W3C)

นิพจน์ XPath

XPath ใช้นิพจน์พา ธ เพื่อเลือกโหนดหรือรายการโหนดจากเอกสาร XML ต่อไปนี้เป็นรายการของพา ธ และนิพจน์ที่มีประโยชน์เพื่อเลือกโหนด / รายการโหนดจากเอกสาร XML

ซีเนียร์ นิพจน์และคำอธิบาย
1

node-name

เลือกโหนดทั้งหมดที่มีชื่อ "nodename"

2

/

การเลือกเริ่มต้นจากโหนดรูท

3

//

การเลือกเริ่มจากโหนดปัจจุบันที่ตรงกับการเลือก

4

.

เลือกโหนดปัจจุบัน

5

..

เลือกพาเรนต์ของโหนดปัจจุบัน

6

@

เลือกแอตทริบิวต์

7

student

Example - เลือกโหนดทั้งหมดที่มีชื่อ "นักเรียน"

8

class/student

Example - เลือกองค์ประกอบของนักเรียนทั้งหมดที่เป็นเด็กในชั้นเรียน

9

//student

เลือกองค์ประกอบของนักเรียนทั้งหมดไม่ว่าจะอยู่ที่ใดในเอกสาร

เปรต

เพรดิเคตใช้เพื่อค้นหาโหนดเฉพาะหรือโหนดที่มีค่าเฉพาะและกำหนดโดยใช้ [... ]

นิพจน์ ผลลัพธ์
/ class / student [1] เลือกองค์ประกอบนักเรียนคนแรกที่เป็นลูกขององค์ประกอบชั้นเรียน
/ class / student [last ()] เลือกองค์ประกอบของนักเรียนคนสุดท้ายที่เป็นลูกขององค์ประกอบชั้นเรียน
/ class / student [last () - 1] เลือกองค์ประกอบสุดท้ายของนักเรียน แต่เป็นหนึ่งในองค์ประกอบของชั้นเรียน
// นักเรียน [@rollno = '493'] เลือกองค์ประกอบนักเรียนทั้งหมดที่มีแอตทริบิวต์ชื่อ rollno ด้วยค่า "493"