อ่านแต่หัวข่าวเฉยๆ มันจะเข้าใจยากนิดนึงครับ ขออธิบายเพิ่มดังนี้
"วัตถุ" หรือ "อ็อบเจ็คต์" แต่ละชนิดจะมีข้อมูล metadata ที่อธิบายตัวมันเองแตกต่างกันไป เช่น ภาพยนตร์มีข้อมูลความยาว ผู้กำกับ นักแสดงนำ, หนังสือมีข้อมูลผู้เขียน ปีที่พิมพ์ จำนวนหน้า ฯลฯ ซึ่งเวลาเก็บข้อมูล metadata เหล่านี้ในฐานข้อมูลเฉพาะก็ไม่มีปัญหาอะไร เพราะกำหนดฟิลด์ชัดเจนว่าฟิลด์ไหนหมายถึงอะไร (structured data)
แต่พอ "แสดงผล" ข้อมูลออกมาเป็น HTML บนหน้าเว็บ มันจะกลายเป็นข้อความ text ธรรมดาทั้งหมด (unstructured data) แยกแยะได้ยากว่าข้อความส่วนไหนคือฟิลด์ผู้เขียน ฟิลด์ผู้กำกับ ฯลฯ แน่นอนว่าเรา__อาจ__ดักจับแพทเทิร์นบางอย่างได้ แต่ไม่ใช่เรื่องง่ายเพราะแต่ละเว็บใช้ไม่เหมือนกัน
ในมุมมองของคนทำ search engine ปัญหานี้ทำให้ผลการค้นหาไม่ดีอย่างที่ควรจะเป็น เพราะ search engine ไม่สามารถสกัดข้อมูลที่ควรจะเป็น structured ออกมาได้
ทางออกหนึ่งของปัญหานี้ก็คือกำหนดฟอร์แมตมาตรฐานให้กับข้อมูล HTML (และหวังว่าคนจะนำไปใช้กันเยอะๆ) ฟอร์แมตข้อมูลลักษณะนี้เรียกว่า microdata (ในอดีตเคยมีโครงการ Microformats พยายามจะทำแบบนี้แต่ไม่ประสบความสำเร็จนัก)
Schema.org เป็นโครงการใหม่ที่พยายามกำหนดฟอร์แมต microdata แต่คราวนี้ไม่ธรรมดาเพราะ search engine ใหญ่ของโลก 3 รายคือกูเกิล ไมโครซอฟท์ ยาฮู หนุนหลังอย่างเต็มที่
Schema.org จะทำตัวเป็นองค์กรกลางสำหรับกำหนดฟอร์แมต microdata รูปแบบต่าง เช่น ภาพยนตร์ หนังสือ สูตรอาหาร รายการทีวี บุคคล เหตุการณ์ องค์กร ฯลฯ (ดูรายการทั้งหมด)
เพื่อให้เห็นภาพกันมากขึ้น ก็ขอโชว์โค้ดตัวอย่างของ schema.org ครับ
ข้อความปกติบนเว็บ
Resistance 3: Fall of Man
by Sony
Platform: Playstation 3
Rated: Mature
ฟอร์แมตที่กำหนดโดย schema.org
<div itemscope itemtype="http://schema.org/CreativeWork">
<img itemprop="image" src="videogame.jpg" />
<span itemprop="name">Resistance 3: Fall of Man</span>
by <span itemprop="author">Sony</span>,
Platform: Playstation 3
Rated:<span itemprop="contentRating">Mature</span>
</div>
จะเห็นว่าฟอร์แมตของ schema.org จะใช้แท็ก HTML ธรรมดา แต่จะเพิ่ม attribute ใหม่มาสองชนิดคือ itemtype และ temprop เป็นต้น
กูเกิลประกาศว่าเดิมทีรองรับฟอร์แมตแบบนี้ 3 ชนิดคือ microformat, RDFa และ microdata (ของ schema.org) ต่อจากนี้ไปจะเน้นที่ microdata เพียงอย่างเดียว แต่ก็จะยังรองรับฟอร์แมตแบบอื่นๆ ต่อไป
กูเกิลยังออกเครื่องมือสำหรับทดสอบเว็บไซต์ว่าเขียนฟอร์แมตของ microdata ถูกต้องหรือไม่ ชื่อว่า Rich Snippets Testing Tool
การร่วมกันผลักดัน schema.org ครั้งนี้ จะคล้ายๆ กับการกำหนดฟอร์แมตของ sitemap ในอดีต (ผ่าน sitemaps.org) ซึ่งภายหลังกลายเป็นมาตรฐานให้เว็บมาสเตอร์ทุกเว็บต้องปฏิบัติตาม คราวนี้ก็ต้องรอดูว่า schema.org จะมีคนใช้มากน้อยแค่ไหน (อาจต้องให้เวลาอีกสักพัก)
ใครที่ทำเว็บรีวิวผลิตภัณฑ์ชนิดต่างๆ อาจพิจารณาใช้งานเพื่อให้ search engine เข้าถึงข้อมูลของเว็บเราได้ดีขึ้น
ที่มา - Search Engine Land
คำประกาศสนับสนุนจาก 3 รายใหญ่: กูเกิล, ไมโครซอฟท์, ยาฮู
on
ใครนั่งทำ SEO
tr Fri, 03/06/2011 - 11:17
ใครนั่งทำ SEO ก็ควรนั่งทำอันนี้แหละ สามเจ้าใหญ่เขาจัดเองเลย :)
ดูแล้วแปลกๆ อย่าง <div
PaPaSEK Fri, 03/06/2011 - 11:22
ดูแล้วแปลกๆ อย่าง <div itemscope> ผมว่าน่าจะเป็น <div:itemscope> นะครับ
อ้างอิงจาก XML Schema ที่เคยผ่านตามา
div:itemscope มันเป็น tag
xenogew Fri, 03/06/2011 - 11:29
In reply to ดูแล้วแปลกๆ อย่าง <div by PaPaSEK
div:itemscope มันเป็น tag ใหม่ไปเลยนะครับ
ไม่เหมือนกับ div แต่ใช้ attr เป็น itemscope เพราะ div เดิมก็ยังแสดงผลได้ปกติอยู่ เพียงแต่ attr ตัวใหม่เพิ่มเข้ามา browser ก็แสดงผลได้ถูกต้อง และ ignore ตัว attr ที่ไม่รู้จักไป แต่ search engine สามารถ crawl เพื่อดักจับ attr ใหม่ในเว็บได้
โอ้!
PaPaSEK Fri, 03/06/2011 - 11:32
In reply to div:itemscope มันเป็น tag by xenogew
โอ้! ขอบคุณมากครับสำหรับความรู้
เอ... เหมือนผมเคยอ่านเจอจากไหนไม่รู้ว่า Attribute ที่มันเปิดโล่งๆ นี่ถือว่าไม่มาตรฐานไม่ใช่เหรอครับ (HTML Schema)
หรือว่านี่เป็นมาตรฐานใหม่อีกตัว?
ปกติการเปิด attribute โล่งๆ
icez Fri, 03/06/2011 - 16:06
In reply to โอ้! by PaPaSEK
ปกติการเปิด attribute โล่งๆ จะหมายถึง attribute นั้นเป็น boolean และให้ค่าเท่ากับ true (ถ้าไม่มีถือว่าเป็น false) ครับ
ยกเว้นเสียแต่จะใส่ attribute value เป็น false / disable / อะไรแนวๆ นี้
ไม่เป็นมาตรฐาน XML ครับ
lew Fri, 03/06/2011 - 16:19
In reply to โอ้! by PaPaSEK
ไม่เป็นมาตรฐาน XML ครับ แต่เป็นมาตรฐาน SGML สมัยที่ HTML ก่อนยุค XHTML ก็ใช้กันเป็นปรกติ
แต่ถ้าใช้ XHTML ก็ validate
ipats Fri, 03/06/2011 - 21:04
In reply to ไม่เป็นมาตรฐาน XML ครับ by lew
แต่ถ้าใช้ XHTML ก็ validate ไม่ผ่านอยู่ดีนะครับ พวก attribute ลอยๆ นี่ ต้องจับมาใส่ = หมด :D
html5 ไม่เป็น xml แล้วครับ
lew Fri, 03/06/2011 - 23:06
In reply to แต่ถ้าใช้ XHTML ก็ validate by ipats
html5 ไม่เป็น xml แล้วครับ กลับไป sgml แล้ว
@icez ขอบคุณมากครับ เขียน
PaPaSEK Fri, 03/06/2011 - 18:35
In reply to โอ้! by PaPaSEK
@icez ขอบคุณมากครับ เขียน HTML มาหลายปีเพิ่งเข้าใขวันนี้ว่า Attribute แบบเปิดโล่งคือ Boolean
@lew ขอบคุณอีกเช่นกันครับ รับวันมาตรฐานมีหลายแบบเหลือเกิน ชักมึนๆ คงต้องฝึกบ่อยๆ จะได้ชิน
ก็มี attribute ชื่อ checked
tewson Fri, 03/06/2011 - 19:07
In reply to @icez ขอบคุณมากครับ เขียน by PaPaSEK
ก็มี attribute ชื่อ checked ของ ไงครับที่เปิดโล่ง เป็น boolean
แต่ถ้าเอาไป validate พวก
criminals Fri, 03/06/2011 - 23:03
In reply to ก็มี attribute ชื่อ checked by tewson
แต่ถ้าเอาไป validate พวก xhtml 1.1 strict อะไรเทือกนี้จะไม่ผ่านครับ
ต้องเขียน checked="checked"
ถ้าได้อ่านหนังสือ Weaving the
lew Fri, 03/06/2011 - 23:12
In reply to @icez ขอบคุณมากครับ เขียน by PaPaSEK
ถ้าได้อ่านหนังสือ Weaving the Web ของท่านเซอร์ Tim จะเล่าไว้ครับ ว่าสมัยนั้นมีฟอร์แมตสำหรับ HyperText จำนวนมาก บางอันเสียเงิน บางอันฟรี
HTML สร้างจาก SGML ที่ตอนนั้น IBM กำลังสนับสนุนให้บริษัทต่างๆ เก็บข้อมูลเป็น SGML แทน Binary กันมากขึ้น ตอนนั้น Tim B. Lee ถึงได้ไปสร้างมาตรฐานจาก SGML ขึ้นมาอีกชัน ผ่านไปหลายปีบริษัทใหญ่ๆ เช่น IBM และบริษัทซอฟต์แวร์อื่นๆ ถึงได้ผลักดัน XML
คนมักลืมชื่อ IBM ในประวัติศาสตร์หลายๆ หน้าของวงการครับ ทั้ง SGML นี่หลังๆ หนังสือก็ไม่เขียนถึงกันแล้ว
โอ้วว สุดยอดจริงๆ
Pinery Fri, 03/06/2011 - 11:22
โอ้วว สุดยอดจริงๆ
ชอบหน้าคำประกาศของ Google
polaromonas Fri, 03/06/2011 - 11:23
ชอบหน้าคำประกาศของ Google มีสูตรยำมะม่วงด้วย :D
จริงด้วย เปรี้ยวปากเลยย
psemanssc Fri, 03/06/2011 - 12:04
In reply to ชอบหน้าคำประกาศของ Google by polaromonas
จริงด้วย เปรี้ยวปากเลยย
ชาว Web designer
winteen Fri, 03/06/2011 - 12:52
ชาว Web designer ได้ของเล่นใหม่มาใช้อีกแล้วว
แจ่มมาก
konkeanweb Fri, 03/06/2011 - 12:52
แจ่มมาก
ผลตอบรับดีเชียวนะ
phukapond Fri, 03/06/2011 - 13:16
ผลตอบรับดีเชียวนะ
ชอบ microformat มากกว่าแฮะ
ipats Fri, 03/06/2011 - 15:46
ชอบ microformat มากกว่าแฮะ อันนั้นใช้ class แล้วเอาไปผูกกับ css ง่ายดี, javascript framework ปัจจุบันส่วนใหญ่ก็มี class selector กันอยู่แล้ว จัดการต่างๆ ง่ายกว่า
attribute มันก็ select
lew Fri, 03/06/2011 - 16:07
In reply to ชอบ microformat มากกว่าแฮะ by ipats
attribute มันก็ select ได้เหมือนกัน?
จริงๆ มันก็ได้นะ
ipats Fri, 03/06/2011 - 16:23
In reply to attribute มันก็ select by lew
จริงๆ มันก็ได้นะ แค่ผมไม่คุ้นเฉยๆ แหละ แหะๆ
มันน่าจะทำตั้งนานแล้ว
massacre Fri, 03/06/2011 - 16:53
มันน่าจะทำตั้งนานแล้ว
จะถึงยุค web 3.0
rabbitch Fri, 03/06/2011 - 17:41
จะถึงยุค web 3.0 แล้วใช่ไหมนี่ หลังจากโรบอทอ่านเข้าใจอีกหน่อยคงนำมาประมวลผลจนคอมพิวเตอร์เข้าใจอะไรที่มนุษย์เข้าใจ
แล้วจะผ่าน W3C มั้ยครับ
shelling Fri, 03/06/2011 - 18:04
แล้วจะผ่าน W3C มั้ยครับ
คงไม่ผ่าน ก็ต้องเลือกเอาว่า
platalay Fri, 03/06/2011 - 18:41
In reply to แล้วจะผ่าน W3C มั้ยครับ by shelling
คงไม่ผ่าน
ก็ต้องเลือกเอาว่า จะเอามาตราฐาน หรือจะเอา SEO
ผ่านครับ W3C
rattananen Fri, 03/06/2011 - 18:46
In reply to แล้วจะผ่าน W3C มั้ยครับ by shelling
ผ่านครับ W3C ไม่ได้กำหนดว่าห้ามใส่ attribute ที่ไม่ได้กำหนดไว้หนิครับ
คิดว่า ผ่าน/ไม่ผ่าน
xenogew Fri, 03/06/2011 - 18:57
In reply to แล้วจะผ่าน W3C มั้ยครับ by shelling
คิดว่า ผ่าน/ไม่ผ่าน คงไม่เป็นปัญหามั้งนะ
เพราะหลายครั้งที่ code ที่ทางฝั่ง distributor แจกออกมา ก็มี attribute แปลก ๆ ติดมา
หรืออย่างพวก Dojo, jQuery ก็เช่นกัน ที่ติด attribute ที่ไม่ได้อยู่ใน W3C standard แต่ก็เพื่อความสะดวกในการเรียกใช้งานตาม platform ที่จะใช้งาน ก็ขึ้นแดง (ดัก error) ก็เพราะตัว IDE ไม่มีการกำหนด definition ให้มันต่างหาก
สกีม่า ดอท โอ อาร์ จี
latesleeper Sat, 04/06/2011 - 01:33
สกีม่า ดอท โอ อาร์ จี
เหมือน Open Graph ที่
jarujit Sun, 05/06/2011 - 09:38
เหมือน Open Graph ที่ Facebook ใช้อยู่หรือเปล่าครับ?