معرفی XML و DTD
اسلاید 1: 1معرفی XML و DTDبا تشکر از:علی آراسته، محمد مهدی حاتمی، جواد سلیمی، مجتبی محامد
اسلاید 2: 2XMLمقدمه XMLقوانین نگارش در XML ساختار DTD
اسلاید 3: 3»»
اسلاید 4: 4»»
اسلاید 5: 5
اسلاید 6: 6مقدمه XML
اسلاید 7: 7XML چیست ؟XML eXtensibleMarkupLanguage »» XML یک Meta Markup Language است. »» XML برای انتقال دادهای ساخت یافته در محیط اینترنت . »» قالبی مناسب برای ذخیره سازی دادهها.
اسلاید 8: 8تاریخچه XMLSGMLHTMLXMLStandard Generalized Markup LanguageHyperText Markup LanguageeXtensible Markup Language
اسلاید 9: 9ضرورت :XML ضرورتها : »» ذخیره ,سازمانبندی و ارسال اطلاعات »» تقريبا تمام استانداردها وپروتكل هاي web service بر اساس XML هستند. »» ظرفيت فايل هاي XML زياد است. »»XML ماژولار است
اسلاید 10: 10 »»XML به منظور حمل اطلاعات طراحی شده »»XML و HTML هر کدام برای هدف خاصی طراحی شده اند. »»XML برای ذخيره وسازمان بندي اطلاعات بوجود آمد. »»HTML برای نمایش اطلاعات بوجود آمدتفاوت XML با HTML
اسلاید 11: 11کاربرد XML»» مبادله اطلاعات بين برنامه هاي نا متجانس ،بنگاه هاي تجاري وبانك هاي اطلاعاتي»» امكان فعال نمودن مدلي براي نمايش اطلاعات يكسان بر روي دستگاه هاي متفاوت با اهداف گوناگون.»» يك قالب مناسب براي ذخيره اطلاعات
اسلاید 12: 12قوانین نگارشدر XML
اسلاید 13: 13قوانین نگارش »» ابزارهای نوشتن و اجرا: »»XML را مانند HTML میتوان با هر ویرایشگر متنی نوشت.»» اجرایXML با مرورگرها»» تبدیل سایر اسناد به اسناد XML»» تبدیل اسناد XML به HTML
اسلاید 14: 14قوانین نگارش »» عناصر: XML نيز مانند HTML از سه قسمت عناصر،ويژگي ها و مقادير تشكيل شده است .هر عنصر دارای یک برچسب شروع ویک بر چسب پایان دارد.<element>contents</element>بر چسب شروعبرچسب پایانیمثال:<bank>customer</bank>
اسلاید 15: 15قوانین نگارش »» عناصر: هر عنصر مي تواند محتوياتي داشته باشد.هر عنصر میتواند یک ویژگی یا بیشتر داشته باشد.اطلاعاتی که توسط ویژگیها تعریف میشوند Meta Data نامیده میشوند.<name language = “English ”>Tiger</name>بر چسب شروعنام ویژگیمقدار ویژگیمحتویاتبرچسب پایانیAttribute<name language = “English ”>Tiger</name>
اسلاید 16: 16<animal><name Language = “English ”>Tiger</name><weight>500 pound </weight></animal>قوانین نگارش »» ادامه<bank name= “mellat ”>customer</bank>Code.xmlCode.xml
اسلاید 17: 17قوانین نگارش »» ادامهعنصر ریشه (Root Element): »» یک سند XML باید یک عنصر ریشه داشته باشد . »» فقط دستورات پردازشی وتوضیحات میتوانند خارج از عنصر ریشه باشند.عناصر تودر تو:<element Out>content <element In>content </element In></element Out>»» به هر میزان دلخواه میتوان عناصر تودرتو ایجاد کرد. »» هر عنصر باید به طورکامل داخل عنصرپدربسته شود .<b><i>This is a example</i></b>
اسلاید 18: 18قوانین نگارش »» ادامهComments<! - - updated May 3,2007 - - >نحوه ي نوشتن توضيحات:اعلان XML :<? xml version =“1.0” ? >
اسلاید 19: 19قوانین نگارش »» ادامه»» نمايش عناصر در قالب متني<[CDATA[CONTENTS]]!>محتوياتي كه قرار است به كاربر نمايش داده شودكلمه ي كليديمثال: <![CDATA[<Address> <city>kashan</kashan><Street>A<>/street] ]>Code.xml»» امكان استفاده ار ساختار CDATA به صورت تو در تو وجود ندارد.
اسلاید 20: 20نکات :»» XML بین حروف بزرگ و کوچک فرق میگذارد»» مقادیر باید داخل ‘ ’ یا “ ” قرار گیرند.»» برخلاف HTML برچسب پایانی حتماً باید داشته باشیم .»» توضیحات تودرتو نمیتوانیم داشته باشیم.»» توضیحات توسط مفسرهای XML نادیده فرض میشوند.»» دستوراتی که با <?شروع و با ?> به پایان میرسند دستورات پردازشی هستند.»» سند XML را با پسوند .xml ذخیره میکنند.قوانین نگارش »»ادامه
اسلاید 21: 21<? xml version =“1.0” ?><!- - This is a example - -><animal><name language = “English”>Tiger</name><name language= “Latin”>Panthera Tigris</name><Weight>500 pounds</weight></animal> مثال:قوانین نگارش »» عناصر
اسلاید 22: 22DTD
اسلاید 23: 23 :DTD»» ساختار DTD داخلی»» ساختار DTD خارجی»» ساختار DTD شخصی»» ساختار DTD عمومی»» قوانین اعتباری در ساختار DTD»» موجودیتها و عبارات توضیحی در ساختار DTD
اسلاید 24: 24DTD چیست ؟DTD مخفف Document Type Definition است . DTD ها ساختار قدیمی تعریف مجموعه قوانین برای اسنادXML می باشند . انواع مجموعه قوانین :DTDشمای XML (XML Schema )»» مجموعه قوانین منطقی و مفهومی میان اطلاعات در حوزه کاربردی .هدف از تعريف DTD منسجم كردن روابط بين داده ها است.
اسلاید 25: 25تعریف DTD داخلی : برای ایجاد یک یا چند سند محدود از ساختار DTD داخلی استفاده میشود . DTD داخلی درداخل سند XML تعریف میشود . در ابتدای سند XML مورد نظر و بعد از اعلان XML و به صورت زیر تعریف میشود :<!DOCTYPE root[ مجموعه قوانین]>عنصر ریشه سند XML
اسلاید 26: 26DTD داخلی »» یک مثال :<? xml version =“1.0” ?><!DOCTYPE animal[ ]><animal> ....</animal>محتویات سند XMLقوانین DTD
اسلاید 27: 27تعریف DTD خارجی :»» در مواردي كه ساختار اطلاعاتي داراي مجموعه اي از چندين سند XMLمختلف باشد از DTD خارجي استفاده مي شود.»» با استفاده از يك ويرايشگر متني قوانين DTD مورد نظر خود را در يك فايل با پسوند .dtd ذخيره مي كنيم.»» در صورتي كه DTD ايجاد شده توسط ديگران نيز مورد استفاده قرار مي گيرد از استاندارد FPI براي نام گذاري آن استفاده مي كنيم .
اسلاید 28: 28تعریف DTD خارجی »» ادامه+//owner//DTD label //xx//تعريف مشخصه ي عمومي رسميبر اسا س استاندارد ISO-//owner//DTD label //xx//شخص يا سازمان پشتيباني كننده DTDبدون استاندارد شرحي ويژه از DTDعبارت مخفف دو حرفي معرف زبان بر اساس استاندارد ISO 639
اسلاید 29: 29تعریف DTD خارجی شخصياعلان DTD خارجي شخصي در سند XML :»» در قسمت اعلان XML عبارت Standalone=”no” قرارمي دهيم سپس عبارت زير را مي نويسيم:<!DOCTYPE root SYSTEM “file.dtd” >مسير و نام فايل DTDبه معناي اينكه DTD تعريف شده يك DTD شخصي استنام عنصر ريشه در سند XML
اسلاید 30: 30تعریف DTD خارجی شخصي »» ادامهمثال:<? xml version =“1.0” Standalone=”no” ?><!DOCTYPE endangered_species SYSTEM “http://www.cookwood.com /xml/End _species.dtd”>»» در صورت لزوم مي توانيم از DTD داخلي وخارجي به همراه يكديگر استفاده كنيم.»» با DTD می توانیم اطلاعات خود را از نظر صحت بررسی کنیم.
اسلاید 31: 31<!DOCTYPE root PUBLIC DTD_name “file.dtd” >مسير و نام فايل DTDبه معناي اينكه DTD تعريف شده يك DTD شخصي استنام عنصر ريشه در سند XMLنام DTD بر اساس FPIتعریف DTD عمومي خارجی:
اسلاید 32: 32تعریف DTD عمومي خارجی »» ادامه مثال<? xml version =“1.0” Standalone=”no” ?><!DOCTYPE endangered_species PUBLIC “-//liz castro//DTD End_species//EN//” “http://www.cookwood.com/xml/ End _species.dtd”>محتویات سند XML
اسلاید 33: 33قوانین اعتباری در ساختار DTD»» قوانين مربو ط به عناصر:<!ELEMENT tag Type>EMPTY(CONTENTS)ANYعنصر مورد نظر در سند xmlكلمه ي كليدي
اسلاید 34: 34قوانین اعتباری در ساختار DTD<!ELEMEN endangered_species(animal)><!ELEMEN picture EMPTY><!ELEMEN endangered_species ENY>چند مثال:»» ترتيب تعريف عناصر در ساختار DTD مهم نيست.
اسلاید 35: 35قوانین اعتباری در ساختار DTD »» ادامهاعلان عناصري كه فقط شامل عبارت هاي متني هستند:<!ELEMEN element_name (#PCDATA)>عنصر فقط شامل عبارت هاي متني استعنصري كه قصد تعريف آن را داريمكلمه ي كليدي»» عنصري كه بر اساس فرايند بالا توليد شود نمي تواند شامل عنصر ديگري باشد.
اسلاید 36: 36قوانین اعتباری در ساختار DTD »» ادامهمثال:<!ELEMEN Address ANY><!ELEMEN CITY (#PCDATA )><!ELEMEN Street (#PCDATA )><!ELEMEN Zip (#PCDATA )><Address><CITY> kashan </CITY><Street> A </Street><Zip> 1264 </Zip></Address>Code.dtdCode.xml
اسلاید 37: 37قوانین اعتباری در ساختار DTD »» ادامهتعريف عنصري كه شامل يك عنصر باشد:<!ELEMEN element_name (child)>تعريف عنصري با اجزاي مرتب:<!ELEMEN element_name (child1,child2,…)><!ELEMEN Address (City)>مثال:
اسلاید 38: 38قوانین اعتباری در ساختار DTD »» ادامه<!ELEMEN Address (State,City,Street,Zip)>مثال:Code.xml<Address><CITY> kashan </CITY><Street> A </Street><Zip> 1264 </Zip> </Address><State> Esfahan </State>Code.dtd
اسلاید 39: 39قوانین اعتباری در ساختار DTD »» ادامهتعريف گزينه ها(choice)<!ELEMEN tag (child1|child2|…)><!ELEMEN Paytype (salary|com|wage)>مثال:
اسلاید 40: 40قوانین اعتباری در ساختار DTD »» ادامه »» در DTD سه نماد ويژه وجود دارد كه براي تعيين تكرار تعداد واحد ها در سند XML به كار مي رود.»» يك واحد مي تواند يك عنصر يا گزينه اي بين چند عنصر ويا مجموعه اي از عناصر ترتيبي باشد. »» علامت ? به اين معني كه واحد مورد نظر حداكثر يك بار مي تواند در سند XML تكرار شود.»» علامت + به اين معني كه واحد مورد نظر حداقل يك بار در سند XML تكرار مي شود .»» علامت * به اين معني كه واحد مورد نظر به هر تعداد مورد نيازدر سند XML مي تواند تكرار مي شود .<!ELEMEN Address (State , City+ ,Street*,Zip?)>Code.dtd»» عنصر State يك بار بايد درسند XML تكرار شود.<!ELEMEN tag (unit, unit+)>Code.dtd
اسلاید 41: 41قوانین اعتباری در ساختار DTD »» ادامه<!ELEMEN Address ((Street*,Zip?)| phon_num)>Code.dtdCode.xml<Address><Street> A</Street><Zip> 1264 </Zip> </Address> <Street> B </Street>Code.xml<Address> </Address> < phon_num >124</ phon_num >
اسلاید 42: 42قوانین اعتباری در ساختار DTD »» ادامهتعريف ويژگي هاي ساده:استفاده از ويژگي هاي عناصر در سند XML هنگامي مجاز است كه در DTD مربوطه تعريف شده باشند.<!ATTLIST tag attribute CDATA #type>Code.dtdكلمه ي كليديعنصر مورد نظر در سند xmlنام ویژگیFIXED “default”IMPLIEDRIQUIREDنوع ویژگی
اسلاید 43: 43قوانین اعتباری در ساختار DTD »» ادامهCode.dtd<!ELEMEN population (#PCDATA)><!ATTLIST population year CDATA #IMPLIED>< population >55500 </ population >< population year=“1387”>55500 </ population >< population year=“mouse”>55500 </ population >تعريف ويژگي ها »» مثال:Code.xmlCode.xmlCode.xml
اسلاید 44: 44قوانین اعتباری در ساختار DTD »» ادامهتعريف ويژگي ها »» مثال:Code.dtd<!ELEMEN population (#PCDATA)><!ATTLIST population year (1387|2008) #RIQUIRED>< population >55500 </ population >< population year=“1387”>55500 </ population >×Code.xmlCode.xml<!ELEMEN population (#PCDATA)><!ATTLIST population year #FIXED “1387”>Code.dtd< population year=“2008”> </ population >×Code.xml
اسلاید 45: 45قوانین اعتباری در ساختار DTD »» ادامهتعريف ويژگي ها با مقادير ويژه:ID: يك مقدار منحصربه فرد (unique value) دركل سندXMLIDREF: يك ارجاع به يك مقدار منحصربه فردIDREFS: چندين ارجاع به مقادير منحصربه فرد<!ATTLIST tag attribute (ID|IDREF|IDREFS) #type>Code.dtdFIXED “default”IMPLIEDRIQUIRED
اسلاید 46: 46قوانین اعتباری در ساختار DTD »» ادامهتعريف ويژگي ها با مقادير ويژه »»مثال :Code.dtd<!ELEMEN Student (#PCDATA)><!ATTLIST Student stu_num ID #RIQUIRED><Student stu_num=“100000”>Code.xml
اسلاید 47: 47موجودیتها در ساختار DTDENTITIESparameterGeneralInternalExternalInternalExternalParsedUnparsed »»مجموعه اي از داده ها كه در هنگام ارجاع به موجوديت در ساختار DTD جايگزين مي شوند. »» خوانايي ساختار DTD را افزايش مي شوند.انواع موجوديت ها:
اسلاید 48: 48موجودیتها در ساختار DTD »» ادامهتعريف يك موجوديت داخلي (ميانبر متني):»» يك موجوديت داخلي دردرون ساختار DTD تعريف مي شود.<!ENTITY Abbreviation “content” >كلمه ي كليدينام شناسه ي موجوديتمتن جايگزينCode.dtd»» براي استفاده از موجوديت در سندXML بايد عبارت ; abbreviation& را تايپ كنيم. »» يك موجوديت مي تواند حاوي موجوديت ديگري نيز باشد.
اسلاید 49: 49موجودیتها در ساختار DTD »» ادامهتعريف يك موجوديت داخلي :»» موجوديت را داخل يك فايل ذخيره ميكنيم.»» عبارت standalone=“no” را در قسمت اعلان XML مي نويسيم.داخل ساختار DTD عبارت زير را قرار مي دهيم.<!ENTITY % abbreviation SYSTEM “entity.url”>مسير ونام فايل خارجيموجوديت خارجينام شناسه ي موجوديتكلمه ي كليدي
اسلاید 50: 50موجودیتها در ساختار DTD »» ادامهموجوديت هاي با محتويات تفسير شده:»» اطلاعات متني را شامل نمي شوند.»» توسط پارسر XML مورد ارزيابي قرار نخواهند گرفت.تعريف موجوديت هاي با محتويات تفسير شده:<!ENTITY abbreviation SYSTEM “entity.url” NDATA id>تشريح كننده ي اطلاعات تفسير شده<!ENTITY flower_pic SYSTEM “flower. Jpg ” NDATA jpg>مثال:Code.dtd
اسلاید 51: 51موجودیتها در ساختار DTD »» ادامهعبارت هاي توضيحي موجوديت ها :<!ENTITY abbreviation SYSTEM “entity.url” NDATA id><!NOTATION id SYSTEM “content” >كلمه ي كليديتوضيحات
اسلاید 52: 52معايب DTD :»» ساختار DTD ارتباط نزديكي با ساختار XML ندارد.»» در DTD عناصري با نام يكسان نمي توان تعريف كرد.»» امكان تعريف نوع داده اي براي عناصر وجود ندارد.»» امكان تعريف ارزش مقداري وجود ندارد.راه حل: استفاده از ساختار شماي XML
اسلاید 53: 53
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.