ความแตกต่างระหว่างXML Schema
และWSDL
คืออะไร?
ที่ผมสังเกตเห็นความแตกต่างก็คือว่าWSDL
มีXSD
และWSDL
เราสามารถประกาศการดำเนินงาน XSD
แต่ไม่ได้อยู่ใน ถูกต้องไหม
ความแตกต่างระหว่างXML Schema
และWSDL
คืออะไร?
ที่ผมสังเกตเห็นความแตกต่างก็คือว่าWSDL
มีXSD
และWSDL
เราสามารถประกาศการดำเนินงาน XSD
แต่ไม่ได้อยู่ใน ถูกต้องไหม
คำตอบ:
XSD กำหนดสคีมาซึ่งเป็นคำจำกัดความของวิธีการที่โครงสร้างเอกสาร XML คุณสามารถใช้มันเพื่อตรวจสอบว่าเอกสาร XML ที่กำหนดนั้นถูกต้องและเป็นไปตามกฎที่คุณวางไว้ในสคีมา
WSDL เป็นเอกสาร XML ที่อธิบายบริการเว็บ มันแสดงให้เห็นว่าการดำเนินงานที่มีอยู่และวิธีการที่โครงสร้างข้อมูลที่จะส่งไปยังการดำเนินงานเหล่านั้น
เอกสาร WSDL มี XSD ที่เชื่อมโยงซึ่งแสดงสิ่งที่ถูกต้องที่จะใส่ในเอกสาร WSDL
?xsd=1
URL โดยอัตโนมัติ
WSDL (Web Services Description Language) อธิบายการบริการและการดำเนินงานของคุณ - บริการใดที่เรียกว่าวิธีการใดที่ให้บริการวิธีการเหล่านี้มีอยู่ในพารามิเตอร์และค่าตอบแทนชนิดใด
มันเป็นคำอธิบายเกี่ยวกับพฤติกรรมของบริการ - มันเป็นฟังก์ชั่น
XSD (Xml Schema Definition) อธิบายโครงสร้างแบบคงที่ของชนิดข้อมูลที่ซับซ้อนซึ่งแลกเปลี่ยนโดยวิธีการบริการเหล่านั้น มันอธิบายประเภทเขตข้อมูลของพวกเขาข้อ จำกัด ใด ๆ ในเขตข้อมูลเหล่านั้น (เช่นความยาวสูงสุดหรือรูปแบบ regex) และอื่น ๆ
มันเป็นคำอธิบายของประเภทข้อมูลและคุณสมบัติคงที่ของบริการ - มันเกี่ยวกับข้อมูล
XSD: นิยาม XML Schema
XML: ภาษามาร์กอัป eXtensible
WSDL: ภาษานิยามบริการเว็บ
ฉันจะไม่ตอบคำถามทางเทคนิค ฉันกำลังเล็งไปที่คำอธิบายนี้ตั้งแต่เริ่มต้น
การสื่อสารระหว่างสองแอปพลิเคชั่นที่แตกต่างกันนั้นไม่ใช่เรื่องง่ายที่พัฒนาโดยใช้เทคโนโลยีที่แตกต่างกันสองแบบ ตัวอย่างเช่น บริษัท ในชิคาโกอาจพัฒนาเว็บแอปพลิเคชันโดยใช้ Java และ บริษัท อื่นในนิวยอร์กอาจพัฒนาแอปพลิเคชันใน C # และเมื่อทั้งสอง บริษัท ตัดสินใจที่จะแบ่งปันข้อมูล XML ก็จะเข้ามาในรูปภาพ ช่วยในการจัดเก็บและขนส่งข้อมูลระหว่างแอพพลิเคชั่นที่ต่างกันสองตัวที่พัฒนาขึ้นโดยใช้เทคโนโลยีที่แตกต่าง หมายเหตุ: ไม่ จำกัด เฉพาะภาษาการเขียนโปรแกรมโปรดทำการวิจัยเกี่ยวกับการขนส่งข้อมูลระหว่างแอพสองตัวที่แตกต่างกัน
XSD เป็นคำจำกัดความของสคีมา จากสิ่งที่ฉันหมายถึงก็คือการบอกให้ผู้ใช้พัฒนา XML ในสคีมาดังกล่าว โปรดดูภาพด้านล่างและโปรดดูอย่างใกล้ชิดด้วยองค์ประกอบ "load-on-startup" และประเภทของมันซึ่งเป็นจำนวนเต็ม ในอิมเมจ XSD คุณสามารถดูได้ว่าเป็นค่าจำนวนเต็มสำหรับ "load-on-startup" และเมื่อผู้ใช้สร้าง / XML ของพวกเขาพวกเขาจะส่งค่า int ไปยังองค์ประกอบเฉพาะนั้น เพื่อเป็นการเตือนความจำ XSD เป็นสคีมาและสไตล์ในขณะที่ XML เป็นรูปแบบการสื่อสารกับแอปพลิเคชันหรือระบบอื่น เราต้องเห็น XSD และสร้าง XML ด้วยวิธีอื่นมิเช่นนั้นจะไม่สื่อสารกับแอพพลิเคชั่นหรือระบบอื่นที่ได้รับการพัฒนาด้วยเทคโนโลยีที่แตกต่าง บริษัท ในชิคาโกมีเทมเพลต XSD สำหรับ บริษัท ในเท็กซัสเพื่อเขียนหรือสร้าง XML ในรูปแบบ XSD ที่กำหนด หาก บริษัท ในเท็กซัสล้มเหลวในการปฏิบัติตามกฎหรือสคีมาที่กล่าวถึงใน XSD แสดงว่าเป็นไปไม่ได้ที่จะคาดหวังข้อมูลที่ถูกต้องจาก บริษัท ในชิคาโก มีเรื่องให้ทำมากมายหลังจากเรื่องที่กล่าวข้างต้นซึ่งมือสมัครเล่นหรือมือใหม่ต้องรู้ในขณะที่เขียนโค้ดเพื่อสิ่งที่ฉันพูดไว้ข้างต้น หากคุณต้องการทราบว่าจะเกิดอะไรขึ้นในภายหลังคุณควรนั่งกับวิศวกรซอฟต์แวร์อาวุโสที่พัฒนาบริการเว็บจริง ๆ ถัดไปคือ WSDL โปรดติดตามภาพและลองคิดดูว่า WSDL จะเหมาะกับที่ใด หากคุณต้องการทราบว่าจะเกิดอะไรขึ้นในภายหลังคุณควรนั่งกับวิศวกรซอฟต์แวร์อาวุโสที่พัฒนาบริการเว็บจริง ๆ ถัดไปคือ WSDL โปรดติดตามภาพและลองคิดดูว่า WSDL จะเหมาะกับที่ใด หากคุณต้องการทราบว่าจะเกิดอะไรขึ้นในภายหลังคุณควรนั่งกับวิศวกรซอฟต์แวร์อาวุโสที่พัฒนาบริการเว็บจริง ๆ ถัดไปคือ WSDL โปรดติดตามภาพและลองคิดดูว่า WSDL จะเหมาะกับที่ใด
*************** ======== ด้านล่างเป็นภาพ XML บางส่วน ========== ************ ***
*************** ======== ด้านล่างเป็นภาพ XSD บางส่วน ========== ************ ***
*************** ======== ด้านล่างนี้เป็นภาพ WSDL บางส่วน ======= ***************
ฉันต้องสร้างตัวอย่าง WSDL สำหรับเว็บเซอร์วิสชื่อ Book หมายเหตุเป็น XSD แต่คุณต้องเรียกว่า WSDL (ภาษาบริการการกำหนดภาษา) เนื่องจากเป็นบริการที่เฉพาะเจาะจงสำหรับเว็บเซอร์วิส WSDL ด้านบน (หรือในคำอื่น ๆ XSD) ถูกสร้างขึ้นสำหรับคลาสที่ชื่อว่า Book.java และได้สร้างบริการ SOAP การให้บริการเว็บ SOAP สร้างขึ้นเป็นหัวข้ออื่นอย่างไร หนึ่งจะต้องเขียนคลาส Java และก่อนที่จะดำเนินการสร้างเป็นบริการเว็บผู้ใช้จะต้องตรวจสอบให้แน่ใจว่ามีการติดตั้ง Axis2 API และ Tomcat ไปยังโฮสต์บริการเว็บอยู่ในสถานที่
ในฐานะที่เป็นผู้ให้บริการ (ผู้ที่อนุญาตให้ผู้อื่น (ลูกค้า) เข้าถึงข้อมูลหรือข้อมูลจากระบบของพวกเขา) ทำให้ลูกค้า (ผู้ที่ต้องการใช้ข้อมูลหรือข้อมูลของผู้ให้บริการ) เข้าถึงข้อมูลผ่านทางบริการเว็บได้อย่างสมบูรณ์ โลกเต็มใจเปิดเผยฐานข้อมูลสำหรับบุคคลภายนอก เช่นเดียวกับ บริษัท ของฉันตัดสินใจที่จะให้ข้อมูลเกี่ยวกับผลิตภัณฑ์ผ่านทางบริการเว็บดังนั้นเราจึงต้องสร้างเทมเพลต XSD และส่งต่อไปยังลูกค้าของเราบางคนที่ต้องการทำงานกับเรา พวกเขาต้องเขียนโค้ดบางส่วนเพื่อใช้งาน XSD ที่กำหนดอย่างสมบูรณ์และทำการเรียก Web Service เพื่อดึงข้อมูลจาก servicer และแปลงข้อมูลที่ส่งคืนตามความต้องการที่เหมาะสมจากนั้นแสดงหรือเผยแพร่ข้อมูลหรือข้อมูลเกี่ยวกับผลิตภัณฑ์บนเว็บไซต์ของตน ตัวอย่างง่ายๆคือการจองตั๋วเครื่องบิน สายการบินจะอนุญาตให้บุคคลที่สามใช้ข้อมูลเที่ยวบินในเว็บไซต์เพื่อจำหน่ายตั๋ว แต่อีกครั้งมีมากไปมันก็แค่ไม่ให้ตัวแทนตั๋วเครื่องบินของบุคคลที่สามที่จะขายตั๋วจะมีการประสานและความปลอดภัยในสถานที่ หากไม่มีการซิงค์มีโอกาสที่ลูกค้ามากกว่า 1 รายจะซื้อตั๋วเครื่องบินเดียวกันจากแหล่งต่าง ๆ 100%
ฉันหวังว่าผู้เชี่ยวชาญจะช่วยตอบคำถามของฉัน เป็นเรื่องยากสำหรับมือใหม่หรือมือใหม่ที่จะเข้าใจ XML, XSD แล้วจึงทำงานกับ Web Services
XSD คือการตรวจสอบความถูกต้องของเอกสารและมีข้อมูลเมตาเกี่ยวกับ XML ในขณะที่ WSDL จะอธิบายตำแหน่งเว็บเซอร์และการดำเนินการ
XSD (นิยาม XML schema) กำหนดองค์ประกอบในเอกสาร XML สามารถใช้เพื่อตรวจสอบว่าองค์ประกอบในเอกสาร xml เป็นไปตามคำอธิบายที่จะวางเนื้อหาหรือไม่ ในขณะที่ wsdl เป็นประเภทเฉพาะของเอกสาร XML ซึ่งอธิบายบริการเว็บ WSDL ปฏิบัติตาม XSD
WSDL - มันมีการดำเนินการเช่นวิธีการที่ webservice ให้. และวิธีการเหล่านี้สามารถยอมรับประเภทข้อมูลที่เรียบง่ายเช่น int, ลอย ฯลฯ และชนิดข้อมูลที่ซับซ้อนเช่นวัตถุ, เวกเตอร์, อาร์เรย์ ฯลฯ ดังนั้นการทำแผนที่นี้ไปยังประเภทข้อมูล XML xsd ใช้ และขึ้นอยู่กับ xsd ผู้ใช้ที่ต้องการเพิ่มบริการเว็บจากแพลตฟอร์มที่แตกต่างกันสามารถให้ข้อมูลที่เหมาะสม
อ้างอิง: ayazroomy-java.blogspot.com เพื่ออ่านเกี่ยวกับพื้นฐานของเว็บเซอร์
XSD เป็นสกีมาสำหรับไฟล์ WSDL XSD มีประเภทข้อมูลสำหรับ WSDL องค์ประกอบที่ประกาศใน XSD นั้นสามารถใช้ได้ในไฟล์ WSDL เราสามารถตรวจสอบ WSDL กับ XSD เพื่อตรวจสอบบริการเว็บ WSDL ที่ถูกต้องหรือไม่
หากใครบางคนกำลังมองหาการเปรียบเทียบคำตอบนี้อาจเป็นประโยชน์
WSDL เหมือนคำสั่ง 'SHOW TABLE STATUS' ใน mysql มันกำหนดองค์ประกอบทั้งหมด (ประเภทคำขอประเภทการตอบสนองรูปแบบของ URL เพื่อการร้องขอการตี ฯลฯ ) ซึ่งควรเป็นส่วนหนึ่งของ XML โดยคำจำกัดความฉันหมายถึง: 1) ชื่อคำขอหรือการตอบสนอง 2) สิ่งที่ควรถือว่าเป็นอินพุตสิ่งที่ควรถือว่าเป็นผลลัพธ์
XSD เหมือนคำสั่ง DESCRIBE ใน mysql มันบอกสิ่งที่ตัวแปรทั้งหมดและประเภทของพวกเขามีการร้องขอและการตอบสนอง