XML in .NE XML in .NE T T - - Editor Editor : : Đo Đo à à n Quang n Quang Minh Minh 2 2 M M ụ ụ c l c l ụ ụ c c XML Overview XML Overview Đ Đ ọ ọ c c XML XML Ghi Ghi XML XML DOM DOM trong trong .NET .NET Ứ Ứ ng ng d d ụ ụ ng ng XML in .NE XML in .NE T T - - Editor Editor : : Đo Đo à à n Quang n Quang Minh Minh 3 3 XML Overview XML Overview XML l XML l à à g g ì ì – – XML XML – – Extensible Markup Language: ngôn ng Extensible Markup Language: ngôn ng ữ ữ đ đ ị ị nh d nh d ạ ạ ng m ng m ở ở r r ộ ộ ng. ng. – – XML đư XML đư ợ ợ c đ c đ ị ị nh ngh nh ngh ĩ ĩ a b a b ở ở i w3c (World Wide Web Consortium): t i w3c (World Wide Web Consortium): t ổ ổ ch ch ứ ứ c c m m ạ ạ ng to ng to à à n c n c ầ ầ u. u. – – Th Th ự ự c ch c ch ấ ấ t, XML l t, XML l à à ngôn ng ngôn ng ữ ữ t t ổ ổ ng qu ng qu á á t d t d ù ù ng đ ng đ ị ị nh ngh nh ngh ĩ ĩ a d a d ữ ữ li li ệ ệ u thông u thông qua c qua c á á c th c th ẻ ẻ . . Ngôn ng Ngôn ng ữ ữ đ đ ị ị nh d nh d ạ ạ ng ng – – Bao Bao g g ồ ồ m m m m ộ ộ t t t t ậ ậ p p c c á á c c th th ẻ ẻ , , v v à à d d ữ ữ li li ệ ệ u u ch ch ứ ứ a a trong trong c c á á c c th th ẻ ẻ đ đ ó ó . . V V í í d d ụ ụ , , HTML HTML l l à à m m ộ ộ t t lo lo ạ ạ i i ngôn ngôn ng ng ữ ữ đ đ ị ị nh nh d d ạ ạ ng ng . . – – Trong Trong XML, XML, c c á á c c th th ẻ ẻ không không h h ạ ạ n n ch ch ế ế như như HTML. HTML. Ngư Ngư ờ ờ i i s s ử ử d d ụ ụ ng ng c c ó ó th th ể ể t t ự ự do do đ đ ị ị nh nh ngh ngh ĩ ĩ a a c c á á c c th th ẻ ẻ c c ủ ủ a a m m ì ì nh nh . . – – C C á á c c ưu ưu đi đi ể ể m m : : D D ễ ễ d d à à ng ng trao trao đ đ ổ ổ i i d d ữ ữ li li ệ ệ u u : do : do khuôn khuôn d d ạ ạ ng ng XML XML r r ấ ấ t t d d ễ ễ hi hi ể ể u u . XML . XML còn còn đư đư ợ ợ c c g g ọ ọ i i l l à à d d ữ ữ li li ệ ệ u u t t ự ự mô mô t t ả ả . . Kh Kh ả ả năng năng tu tu ỳ ỳ bi bi ế ế n n cao cao : : vi vi ệ ệ c c c c ụ ụ th th ể ể ho ho á á c c á á c c th th ẻ ẻ c c ủ ủ a a XML XML s s ẽ ẽ t t ạ ạ o o ra ra m m ộ ộ t t lo lo ạ ạ t t c c á á c c ngôn ngôn ng ng ữ ữ m m ớ ớ i i , , v v í í d d ụ ụ MML, CML. MML, CML. C C ó ó th th ể ể lưu lưu d d ữ ữ li li ệ ệ u u c c ó ó c c ấ ấ u u tr tr ú ú c c : : d d ự ự a a trên trên vi vi ệ ệ c c s s ử ử d d ụ ụ ng ng c c á á c c th th ẻ ẻ l l ồ ồ ng ng nhau nhau . . XML in .NE XML in .NE T T - - Editor Editor : : Đo Đo à à n Quang n Quang Minh Minh 4 4 XML Overview XML Overview <? xml version= <? xml version= “ “ 1.0 1.0 ” ” encoding= encoding= “ “ UTF UTF - - 8 8 ” ” ?> ?> <Document> <Document> <Greeting> <Greeting> Hello from XML Hello from XML </Greeting> </Greeting> <Message> <Message> Welcome to the wild and woolly world of Welcome to the wild and woolly world of XML. XML. </Message> </Message> </Document> </Document> XML in .NE XML in .NE T T - - Editor Editor : : Đo Đo à à n Quang n Quang Minh Minh 5 5 XML Overview XML Overview C C á á c c ứ ứ ng ng d d ụ ụ ng ng c c ụ ụ th th ể ể c c ủ ủ a a XML XML – – XHTML: XHTML: đây đây l l à à m m ở ở r r ộ ộ ng ng c c ủ ủ a a HTML. HTML. V V ề ề b b ả ả n n ch ch ấ ấ t t , XHTML , XHTML d d ù ù ng ng c c á á c c th th ẻ ẻ c c ủ ủ a a HTML, HTML, c c á á c c th th ẻ ẻ n n à à y y ph ph ả ả i i vi vi ế ế t t thư thư ờ ờ ng ng , , v v à à t t à à i i li li ệ ệ u u XHTML XHTML ph ph ả ả i i l l à à t t à à i i li li ệ ệ u u h h ợ ợ p p khuôn khuôn d d ạ ạ ng ng . . – – CML, MML: CML, MML: c c á á c c ngôn ngôn ng ng ữ ữ bi bi ể ể u u di di ễ ễ n n công công th th ứ ứ c c ho ho á á h h ọ ọ c c , , công công th th ứ ứ c c to to á á n n h h ọ ọ c c . . C C á á c c công công th th ứ ứ c c n n à à y y c c ó ó th th ể ể đư đư ợ ợ c c v v ẽ ẽ trên trên c c á á c c tr tr ì ì nh nh duy duy ệ ệ t t đ đ ặ ặ c c bi bi ệ ệ t t , , thông thông qua qua d d ữ ữ li li ệ ệ u u XML. XML. – – WML: WML: ngôn ngôn ng ng ữ ữ đ đ ị ị nh nh d d ạ ạ ng ng m m ạ ạ ng ng không không dây dây , , nh nh ằ ằ m m t t ạ ạ o o c c á á c c t t à à i i li li ệ ệ u u web web hi hi ể ể n n th th ị ị trên trên m m á á y y đi đi ệ ệ n n tho tho ạ ạ i i di di đ đ ộ ộ ng ng . . – – SOAP (Simple Object Access Protocol): SOAP (Simple Object Access Protocol): giao giao th th ứ ứ c c truy truy c c ậ ậ p p đ đ ố ố i i tư tư ợ ợ ng ng đơn đơn gi gi ả ả n n , , cho cho ph ph é é p p c c á á c c ứ ứ ng ng d d ụ ụ ng ng web web c c ó ó th th ể ể trao trao đ đ ổ ổ i i thông thông tin tin v v ớ ớ i i nhau nhau . . Khi Khi m m ộ ộ t t ứ ứ ng ng d d ụ ụ ng ng web web c c ầ ầ n n thi thi h h à à nh nh m m ộ ộ t t ch ch ứ ứ c c năng năng do do m m ộ ộ t t web service web service cung cung c c ấ ấ p p , , n n ó ó s s ẽ ẽ g g ử ử i i d d ữ ữ li li ệ ệ u u theo theo chu chu ẩ ẩ n n SOAP SOAP t t ớ ớ i i web service. web service. Đ Đ ế ế n n lư lư ợ ợ t t m m ì ì nh nh , , sau sau khi khi th th ự ự c c thi thi yêu yêu c c ầ ầ u u xong xong , web service , web service s s ẽ ẽ tr tr ả ả l l ạ ạ i i k k ế ế t t qu qu ả ả , , c c ũ ũ ng ng theo theo chu chu ẩ ẩ n n SOAP. SOAP. XML in .NE XML in .NE T T - - Editor Editor : : Đo Đo à à n Quang n Quang Minh Minh 6 6 Đ Đ ọ ọ c c XML XML C C á á c c đ đ ố ố i i tư tư ợ ợ ng ng x x ử ử lý lý XML XML đư đư ợ ợ c c cung cung c c ấ ấ p p trong trong System.XML System.XML – – Đ Đ ể ể đ đ ọ ọ c c file XML, file XML, d d ù ù ng ng l l ớ ớ p p XmlTextReader XmlTextReader H H à à m m t t ạ ạ o o v v ớ ớ i i tham tham s s ố ố l l à à tên tên file XML file XML c c ầ ầ n n đ đ ọ ọ c c . . Phương Phương th th ứ ứ c c Read() Read() đ đ ọ ọ c c 1 1 th th à à nh nh ph ph ầ ầ n n c c ủ ủ a a file. file. Khi Khi đ đ ọ ọ c c th th à à nh nh công công , , đ đ ố ố i i tư tư ợ ợ ng ng s s ẽ ẽ tr tr ỏ ỏ t t ớ ớ i i node node hi hi ệ ệ n n th th ờ ờ i i . . – – T T ạ ạ i i m m ộ ộ t t node, node, ch ch ú ú ng ng ta ta c c ó ó th th ể ể đ đ ọ ọ c c đư đư ợ ợ c c m m ộ ộ t t s s ố ố th th à à nh nh ph ph ầ ầ n n . . Ki Ki ể ể u u c c ủ ủ a a node: node: thu thu ộ ộ c c t t í í nh nh NodeType NodeType – – C C ó ó nh nh ữ ữ ng ng ki ki ể ể u u như như Element, Text, CDATA, Comment, Element, Text, CDATA, Comment, … … Gi Gi á á tr tr ị ị c c ủ ủ a a node: node: thu thu ộ ộ c c t t í í nh nh Value Value C C ó ó th th ể ể s s ử ử d d ụ ụ ng ng c c á á c c phương phương th th ứ ứ c c c c ụ ụ th th ể ể kh kh á á c c như như ReadString ReadString (): (): đ đ ọ ọ c c gi gi á á tr tr ị ị text text c c ủ ủ a a node, node, ReadAttributeValue ReadAttributeValue (): (): đ đ ọ ọ c c gi gi á á tr tr ị ị thu thu ộ ộ c c t t í í nh nh c c ủ ủ a a node. node. . ph ph ả ả i i l l à à t t à à i i li li ệ ệ u u h h ợ ợ p p khuôn khuôn d d ạ ạ ng ng . . – – CML, MML: CML, MML: c c á á c c ngôn ngôn ng ng ữ ữ bi bi ể ể u u di di ễ ễ n n c ng c ng th th ứ ứ c c ho ho á á h h ọ ọ c c , , c ng c ng th th ứ ứ c c to to á á n n h h ọ ọ c c . . C C á á c c c ng c ng th th ứ ứ c c n n à à y y c c ó ó th th ể ể đư đư ợ ợ c c v v ẽ ẽ trên trên c c á á c c tr tr ì ì nh nh duy duy ệ ệ t t đ đ ặ ặ c c bi bi ệ ệ t t ,. c ng c ng th th ứ ứ c c to to á á n n h h ọ ọ c c . . C C á á c c c ng c ng th th ứ ứ c c n n à à y y c c ó ó th th ể ể đư đư ợ ợ c c v v ẽ ẽ trên trên c c á á c c tr tr ì ì nh nh duy duy ệ ệ t t đ đ ặ ặ c c bi bi ệ ệ t t , ,. SOAP (Simple Object Access Protocol): giao giao th th ứ ứ c c truy truy c c ậ ậ p p đ đ ố ố i i tư tư ợ ợ ng ng đơn đơn gi gi ả ả n n , , cho cho ph ph é é p p c c á á c c ứ ứ ng ng d d ụ ụ ng ng web