دو جنبه از XSL : تبدیلات XSL و اشیاء قالب بندی XSL XSL، در واقع دارای دو راستا می باشد، تبدیلات XSL یا XSLT (نگارش 1.0 که یک معرفی W3C است و نگارش 1.1 که ارائه شده است) و اشیاء قالب بندی XSL یا XSLFO.
هر کدام هنگامی که واردکار با داده های XML می شوند، برای انجام وظایف متفاوتی طراحی می شوند.
XSLT اجازه می دهد محتوای XML را بگیریم و به هر شکل دیگری تغییر دهیم، ممکن است آن شکل دیگر، یک صفحه XTML یک فایل متنی یا حتی یک سند XML دیگر باشد.
می توانیم محتوایی که می خواهیم نمایش داده شود را انتخاب کنیم و محتوا را اضافه کنیم یا حتی محتوایی را که آنجا وجود دارد اجرا کنیم.
XSLT با تبدیل XML به HTML و افزودن اطلاعات شیوه CSS عمل می کند بلکه اساس آن CSS است و اساساً از همان صفحات و مقادیر استفاده می کند.
در این صورت چه نیازی به آن داریم؟
چرا منحصراً از CSS استفاده نکنیم؟
یکی از نکات قوت XML، این است که می توان در محیطهای مختلف از آن استفاده کرد، نه تنها در مرورگر.
به همین دلیل است خود را در موقعیتی ببینید که محیط کاری شما، کد XML را می شناسد ولی از HTML که در برگیرنده اطلاعات شیوه است یا به آن مراجعه می کند، چیزی متوجه نمی شود.
اشیاء قالب بندی XSL به عنوان بخشی از «درخت نتیجه» که بعد از تبدیل به دست می آید، می باشد، و می توانند توسط هر برنامه کاربردی که از آن پشتیبانی کند، پردازش شود.
آماده سازی برای استفاده از معرفی لازم است آخرین نگارش MSXML3 دریافت شود.
نصب MSXML3 با وجود اینکه، دریافت و نصب MSXML3 شاید بسیار راحت به نظر برسد، گزارشات بسیار زیاد از سیستم ها رسیده است که پردازش کل XSL بعد از عملیات نصب، متوقف می شود.
کاربران دو گزینه انتخابی دارند: نصب MSXML3 در مد "side- by- side" که پیش فرض می باشد.
ابتدا از ایجاد backup در C;\windows\system\MSXML.DDL مطمئن شوید.
اگر این فایل خراب شد و پردازش XSL متوقف گشت، باید با جایگذاری backup، حداقل اجازه استفاده از گزینه انتخابی زیر را بدهد.
ادامه نصب پیش فرض و استفاده از پیش نویس کاری، اکثر اطلاعاتی که در این متن تحت پوشش قرار گرفته، برای هر دو حالت یکی هستند و ما فقط به یک استثنایی که در آنجا مثل هم نیستند، اشاره خواهیم کرد.
بعداً، هنگامی که به پردازش XSLT روی سرویس دهنده (به جای سرویس گیرنده) می پردازیم، می توانیم از معرفی کامل آن برای تولید صفحات XHTML استفاده کنیم که در این صورت لازم نیست در هنگام ساخت برنامه کاربردی خود، نگران پشتیبانی مرورگر از XSL باشیم.
نصب MSXML3 از مراحل زیر است: 1 – مطمئن باشید که بر روی ماشین خود برنامه Windows Installer دارید.
می توان از این آدرس آن را دریافت کرد: http:\www.microsoft.com/msdwnload/ این نرم افزار را نصب کنید، مرورگر را ببندید و دوباره آن را باز کنید.
2 – نرم افراز را از روی اینترنت دریافت کنید.
ما همراه اینترنت اکسپلرر از نگارش منتشر شده MSXML3 استفاده می کنیم که این نرم افزار در آدرس زیر پیدا می شود: http:\msdn.microsoft.
com/ هشدار: اگر نگارش قبلی MSXML را نصب کرده باشید، شاید لازم باشد آن را در اینجا ارتقا دهید.
زیرا بعضی از نتایجی که در این فصل خواهیم دید، با نگارشهای قبلی متفاوت است.
3- از C:/windows/system/MSXL.DDL یک کپی به عنوان backup بگیرید، همان طور که قبلاً به آن اشاره شد.
4 – با دو بار کلیک کردن روی فایل msxm13.exe فایل دریافت شده از روی اینترنت را اجرا کنید.
5 – گاهی اوقات، در صورتی که پیش فرض، مد "side-by-side" باشد (که DLL قبلی را دست نخورده نگه می دارد) ممکن است نصب کامل نشود.
شاید لازم باشد که یک فایل نصب دیگر، xmlinst.exe را اجرا کنید.
که آن را می توان از آدرس زیر دریافت کرد: http:\msdn.microsoft.
com/downloads/default.asp?URL=/ cod\sample.asp?url=/msdn-files/027/001/469/msdncompositedoc.xml پس از اینکه آن را دریافت کردید، روی آن دوباره کلیک کنید تا از حالت فشرده خارج شود.
توجه داشته باشید که در کجا از حالت فشرده آن را خارج کرده اید.
در پنجره اعلان فرمان (Commad Prompt) به آن شاخه بروید و این را تایپ کنید: Xmlipst در این صورت، نصب کامل خواهد شد.
هشدار: با وجود این، مایکروسافت هنوز هم هشدار می دهد که بعضی از سیستم های ممکن است بعد از اجرای xmlinst.exe ناپایدار شوند.
پس تنها در صورتی که نمی توانید برای گذراندن تست به زیر، به مرحله نصب برسید، آن را اجرا کنید.
برای خنثی کردن اثرات xmlinst.exe پیشنهاد می شود به شاخه مناسب بروید و تایپ کنید: umlinst /u معرفی جاوا شاید توجه کرده باشید که تا به حال درباره اینکه از چه سیستم عاملی استفاده می کنیم، صحبت نکرده ایم، زیرا هیچ فرقی نمی کند.
XML تنها متن است و بر روی هر سیستم عاملی که بتوان یک فایل متنی ساخت، می تواند ساخته شود.
به هر حال معمولاً برنامه نویسی واقعی، محدودکننده تر از آن است.
علاوه بر این، شما هنوز نمی توانید برنامه ای مثلاً برای اَپل مکینتاش بنویسید و آن را به همان شکل در ویندوز 98 اجرا کیند.
البته، این مساله به خوبی اصلاح شده است.
عملکرد داخلی هر سیستم عامل و کامپیوتری با بقیه متفاوت است، بنابراین یک برنامه حتماً باید زبان مناسب برای صحبت کردن با آنها را می دانست.
همچنین ممکن است تصور کنید، این کار با طبیعت وب چندان سازگار نیست، چون وب جایی است که یک مطلب باید بتواند به طور مجازی از طریق هر نوع سیستمی مورد دسترسی قرار گیرد.
بنابراین، قبل از اینکه فردی بخواهد یک زبان فراگیر و جهانی پیشنهاد کند، تنها این مساله مهم بود.
در این حالت، آن فرد شرکت Sun Microsystems بود.
سان پیش از آنکه اعلام کند که روی جاوا (زبان برنامه نویسی که در محیطهای مختلف قابل اجراست) کار می کند در حیطه کاری اینترنت وجهه خوبی داشت.
زیرا در آن زمان، تمام سرویس دهنده های اینترنت روی سیستم عاملی به نام یونیکس اجرا می شدند و درصد بالایی از آنها از سولاریس (نمونه ای از یونیکس شرکت سان) استفاده می کردند.
التبه، در آن زمان ماشینهای رومیزی زیادی وجود نداشتند که از یونیکس استفاده کنند، بنابراین اختلاف زیادی بین نرم افزاری که روی سرویس دهنده اجرا می شد و نرم افزاری که می توانست روی مرورگر یا سرویس گیرنده اجرا شود وجود داشت.
جاوا تمام آنها را تغییر داد.
کلید موفقیت جاوا در ایده JVM یا ماشین مجازی جاوا است.
JVM بین کد و سیستم عامل قرار می گیرد و به عنوان یک مفسر کار می کند.
بنابراین تا زمانی که برای سیستم عامل شما اعم از ویندوز 98، یونیکس یا حتی هر چیزی که خودتان نوشته باشید یک JVM وجود داشته باشد کد جاوای یکسانی بر روی سیستم اجرا خواهد شد.
بدین ترتیب شعار «یکبار نوشتن، در هر جایی اجرا شدن» برقرار می باشد.
توجه: کسانی که دقت بیشتری دارند توجه خواهند داشت که در آخرین سالهای دهه 90، بین تولید کنندگان اصلی بر سر نگارشهای بهینه جاوا برای سیستم عاملهای خاص عدم هماهنگی و اختلاف پیش آمد.
این مساله به برنامه های Java Compatible , 100% Pure Java, SUN منتهی شد.
فقط بر نرم افزار Pure Java تکیه خواهیم کرد.
انتخاب عباراتی برای توصیف نوع JVM به عنوان یک مفسر، لازم بود.
برنامه نویسانی که در زبانهایی مثل C++ حرفه ای هستند، متوجه خواهند شد که دو نوع زبان وجود دارد: زبانهای کامپایل شدنی و زبانهای تفسیر شدنی یک زبان کامپایل شدنی (مثل C یا C++) ابتدا نوشته می شود و بعد به زبان محلی سیستمی که روی آن اجرا خواهد شد.
ترجمه می شود.
این روش عملیات را سریع می کند.
نقطه ضعف این روش آن است که چون برنامه ای به زبان محلی خاص آن سیستم ترجمه شده است.
به طور کلی نمی تواند در یک محیط دیگر به کار رود، از طرف دیگر، یک زبان تفسیر شدنی مثل بیسیک یا هر زبان اسکریپت دیگر، تا هنگام به اجرا به زبان محلی ترجمه نمی شود که این ویژگی، قابلیت حمل برنامه را بالاتر می برد.
در این صورت جاوا در کدام دسته قرار می گیرد؟
در واقع، در جایی بین هر دو یک برنامه جاوا به «بایت کد» کامپایل، سپس در هنگام اجرا شدن توسط JVM تفسیر می شود.
در دورانی که جاوا معرفی می شد، شرکت سان یک کامپایلر JIT را هم اضافه کرد که کد را درست قبل از اجرا شدن کامپایل می کرد و سبب بهبود کارایی سیستم می شد.
به هر حال به منظور افزایش قابلیت حمل، در حال حاضر تصور می کنیم که جاوا یک زبان تفسیر شدنی است.
پس، کل این مباحث به چه معنا است؟
به این معنا است که چون جاوا به هیچ سیستم عامل خاصی مربوط نمی شود، یک انتخاب مناسب، برای توسعه برنامه های کاربردیی است که به هیچ محیط خاصی مربوط نمی شوند.
اکثریت ابزارها و برنامه های کاربردی توسعه برنامه های کاربردی XML در جاوا تولید می شوند و ما هم از این شیوه پیروی خواهیم کرد.
نصب Java 2 SDK قبل از اینکه حتی بتوان در مورد اجرای برنامه های کاربردی و نوشتن هر برنامه ای در جاوا فکر کرد، باید چند نرم افزار نصب کرد.
ابتدا به یک JVM نیاز داریم.
همچنین کلاس های اصلی یا برنامه هایی که ساختار زیر بنایی زبان را شکل می دهند لازم هستند، در نهایت، به کامپایلری احتیاج داریم که برنامه ما را به بایت کدی که JVM را می فهمد برگرداند.
محل گرفتن Java 2 SDK جایی که می خواهید از آن کامپایلری بگیرید به اینکه چه سیستم عاملی را اجرا می کنید بستگی دارد.
SUN Microsystems از نگارشهایی برای مایکروسافت ویندوز، لینوکس و همین طور سولاریس پشتیبانی می کند.
JVM های قابل دسترسی دیگری هم از شرکتهای دیگری مثل اپل، مایکروسافت و آی بی ام وجود دارند.
برای دریافت کردن از شرکت سان، آدرس روبه رو را به مرورگر خود بدهید: http:// java .
sun .com/ j2se/ اگر نام سیستم عامل شما روی آن صفحه نبود به این آدرس بروید تا لیستی از نگارشهای موجود در را دریافت کنید: http:// java .
sun .com/cgi-bin/java-ports.cgi مطمئن شوید که SDK را بگیرند نه اینکه فقط یک محیط زمان اجرا بگیرید.
به عنوان مثال MacOS را پیدا می کنید و لینک مقابل آن را دنبال می کنید.
صفحه ای را پیدا خواهید کرد که مراحل ضروری برای رسیدن به MRJ 2.2.2 را توضیح می دهد.
با وجود اینکه به آن هم نیاز دارید، در صورتی که بخواهید واقعاً برنامه های جاوا را بنویسید MRJ SDK هم لازم است.
برای دریافت این نرم افزار به لینک های آدرس زیر مراجعه کنید: http://devworld.apple.com/ java/text/download.html نکته: دنیای برنامه نویسی مدتها قبل از به صحنه آمدن بیسیک، در مورد سرنامها سرگردان بود.
متاسفانه، اکنون که بازاریابی هم وارد صحنه شده، این وضعیت بدتر شده است.
نرم افزاری که برای ساختن برنامه های کاربردی جاوا لازم است با نام JDK یا Java Developer's Kit شناخته شده بود.
(در واقع بعضی از توسعه دهندگان، هنوز هم به این صورت به آن ارجاع می کنند) این نرم افزار شامل JVM، کامپایلر، javac و ابزارهای متعدد دیگر بود.
اولین نگارش ارائه شده آن JDK1.0 بود.
سرانجام، بهبودهایی ایجاد شد تا اینکه به نگارش JDK1.1.8 رسید.
در آن زمان، شرکت سان کانون توسعه را عوض کرد (و به این ترتیب خصیصه های زیادی پیاده سازی شدند) و تصمیم گرفت نام محیط را به صورت Java 2 عوض کند.
متاسفانه، شرکت سان شماره های نگارش را تغییر نداد.
یعنی در واقع Java 2 چیزی است که باید JDK 1.2 خوانده می شد ولی در حال حاضر Java 2 Software Development Kit نگارش 2/1 می باشد.
بنابراین اگر نمی توانید "JDK" را پیدا کنید، نگران نباشید.
همانجاست فقط نامش عوض شده است.
عملیات نصب به دلیل اینکه Java SDK، یک برنامه کاربردی مانند بقیه برنامه هاست، طبیعتاً در قالب یک نصب کننده به همراه یک ویزاد آزاد می آید تا شما را در بین گزینه های انتخابی نصب راهنمایی کند.
عموماً نصب کردن در ویندوز شامل مراحل زیر است (به همراه مجموعه مشابهی برای محیطهای دیگر): 1 – پنجره تمام برنامه های کاربردی باز را ببندید.
2 – روی فایل دریافت شده از روی اینترنت (به عنوان مثال j2sdk1-300-win.exe) دوبار کلیک کیند تا کار نصب کننده شروع شود.
3 – licence agreement را بخوانید و قبول کنید.
4 – یک پوشه مقصد انتخاب کنید، می توانید هر مقصدی که راحت تر است را انتخاب کنید، اما در تمام دستورالعملهای این کتاب فرض خواهد شد که شما JDK را در شاخه اصلی نصب کرده اید.
این پنجره، پوشه مقصد C:\jdk1.3 را می سازد.
5 – مشخص کنید که چه چیزی را می خواهید نصب کنید برای ساخت و اجرای برنامه های کاربردی جاوا، به فایل های برنامه نیاز خواهیم داشت نه فایل های منبع اصلی.
در صورتی که فضای دیسک شما کم است، بهتر است علامت Java Sources را بردارید.
پس از اینکه نصب کننده کامل شد، می توانید فایل دریافت شده را به منظور بازیابی فضای دیسک حذف کنید.
در حال حاضر، دو مرحله بعدی کاملاً اختیاری هستند.
اما در غیر این صورت باید مقداری تایپ کنیم (همچنین لازم خواهد بود برای برنامه های کاربردی آینده، این دو متغیر را تنظیم کنیم.
بنابراین هم اکنون آن را انجام می دهیم).
6 – حال، PATH را مقدار دهی کنید.
با وجود اینکه ما برای دستیابی به محیطی بر مبنای مرورگر تلاش می کنیم، چند کار را از خط فرمان انجام می دهیم، یعنی اینکه، دستورالعملهای را در داخل یک پنجره Comman Prompt (یا چیزی شبیه آن) تایپ خواهیم کرد.
مثلاً اگر بخواهیم از Javac استفاده کنیم باید این خط تایپ شود: c:/jdk 1.3 /bin/java myFile.
Java گر چه واقعاً هیچ نکته اشتباهی در آن وجود ندارد، می تواند مزاحم سرعت عمل باشد و احتمالاً باعث بروز اشکالات تایپی مختلفی می شود.
خوشبختانه، ویندوز با استفاده از متغیر PATH روش میانبری را برای پردازش فراهم می کند.
در عوض اگر خط را تایپ کنید: Java myFile.java ویندوز هر شاخه ای را که در متغیر PATH فهرست شده است، بررسی می کند و به دنبال برنامه ای با نام java می گردد.
می خواهیم این خط را برای همیشه به متغیر PATH اضافه کنیم (به جای اینکه هر زمانی که لازم داشتیم آن را به کار بریم) توسط سیستم عامل می توان این روش را اعمال کرد.
برای ویندوز 95 یا 98، آن را در فایل AUTOEXEC.bat خواهیم گذاشت تا هر وفت که ماشین دوباره راه اندازی شد، اجرا شود.
هشدار: قبل از تغییر دادن فایل AUTOEXEC.bat، یک نسخه پشتیبان از آن بسازید.
خطاهای این فایل می تواند عذاب آور باشد و طبعاً می تواند سیستم عامل را از ماشین بگیرد یا حتی در هنگام راه اندازی مشکل ایجاد شود.
پس از ایجاد AUTOEXEC.bat، فایل را در Notepad باز کنید (نه در WordPad) و عبارت PATH را پیدا کنید.
عموماً چیزی شبیه این است: PATH C:\WINDOWS\COMMAND;C: \ WINDOWS: شاخه bin را اضافه کنید.
بناراین نتیجه کار، چیزی شبیه این خواهد بود: PATH C:\WINDOWS\COMMAND;C: \ WINDOWS; C;\ jdk1.3\bin; فایل را ذخیره کنید.
برای آزمایش PATH (و اطمینان از اینکه خطایی وارد AUTOEXEC.bat نکرده باشید) یک پنجره اعلان فرمان را با انتخاب start/program/MS-Dos Prompt (یا چیزی معادل این در سیستم عامل خود) باز کنید تایپ کنید: autoexeC کلید Enter را فشار دهید.
این دستور همان اسکریپ را اجرا می کند.
و اجرای آن در هنگامی است که کامپیوتر خود را روشن می کنید اگر خطایی وجود داشت، بروید و آن را اصلاح کنید.
در صورت لزوم، قبل از اینکه چیزی را تغییر دهید و دوباره کامپیوتر را روشن کنید، یک کپی از نسخه پشتیبان بسازید.
در صورتی که همه چیز به درستی اجرا شد، خط زیر را تایپ کنید: Path در پنجره اعلان فرمان PATH را آزمایش کنید.
رشته ای از شاخه هایی را که اضافه کردیم باید ببینید.
در ویندوز NT یا ویندوز 2000 این فرآیند بسیار ساده تر است.
این مسیر را انتخاب کنید: Start/control panel/System/environment در زیر قمست PATH, User Variables را جستجو و متمایز کنید.
در انیجا می توانید مقدار را تغییر دهید.
و C:\jdk1.3\bin (یا شاخه مناسب) را به انتهای متغیر PATH اضافه کنید.
همین کار را تحت System Variables انجام دهید.
هشدار: برای کاربران ویندوز 9x و هم برای کاربران ویندوز NT یا 2000 اگر یک نگارش نصب شده قدیمی از JDK دارید، مطمئن شوید که مرجع آن را یا به روز رسانی و یا حذف کرده باشید یا حداقل مطمئن شوید مرجع جدید در ابتدا بیاید زیرا فقط اولین مورد استفاده خواهد شد.
تغییرات را اعمال کنید و آنها را با باز کردن یک پنجره اعلان فرمان و تایپ PATH آزمایش کنید.
7 – CLASSPATH را تنظیم کنید.
در نگارش قبلی Java SDK لازم بود که کاربران متغیری به نام CLASSPATH را اضافه کنند که به برنامه کاربردی می گفت در کجا به دنبال چندین کد مورد نیاز بگردد.
در واقع Java 2 بدون تنظیم CLASSPATH کار می کند.
در صورت لزوم، مسیرهای دیگری برای فرستادن اطلاعات داخل یک برنامه کاربردی وجود دارد به هر حال، ابزارهای دیگری هم نصب خواهیم کرد که برای درست کار کردن به CLASSPATH نیاز دارند.
بنابراین اکنون به سراغ تنظیم آن می رویم.
برای ویندوز 95 یا 98 تقریباً همان روش تنظیم PATH را در پیش می گیریم.
از فایل AUTOEXE.bat، backup بسازید و آن را در Notepad باز کنید.
اگر مقدا دهی یک متغیر، CLASSPATH ندارید در زیر قسمت اعلام PATH، خطی مشابه این اضافه کنید: SET CLASSPATH=.; فایل را ذخیره و اجرا کنید.
این فرمان به برنامه کاربردی می گوید که برای هر کدی که لازم دارد، شاخه جاری را نگاه کند اگر به همراه اطلاعاتی که توسط برنامه های کاربردی دیگری مورد نیاز است، یک تنظیم CLASSPATH موجود را داشتید، بهتر است تا زمانی که شاخه جاری را مطابق آنچه نشان داده شد اضافه می کنید، آن شاخه را ترک کند.
در ویندوز NT یا 2000 برای ایجاد تغییرات، مراحلی مشابه مقدار دهی متغیر PATH را دنبال می کنیم.
به منظور آزمایش تنظیم CLASSPATH، داخل پنجره اعلان فرمان، خط زیرا تایپ کنید: SET این فرمان فهرستی از تنظیمات جاری و اینکه متغیرهای آنها چه هستند را نشان می دهد.
یک فهرست برای CLASSPATH ببینید.
8 – عملیات نصب را آزمایش کنید.
در اینجا، واقعاً نمی خواهیم کد جاوا بنویسیم بلکه تنها می خواهیم مطمئن باشیم که درست نصب شده باشد، برای انجام این کار، دو خط زیر را اعلان خط فرمان تایپ کنید: ed c:\ jk1.3\demo\ ifc\styleoad java-jar styleped.jar پس از گذشت چند ثانیه، این فرمان باید یک پردازشگر متن را به صورت پنجره ای با یک صفحه از Lewis Carroll's Alice in Wonderland بیاورد.
توجه: اگر نگارش دیگری از JDK را دریافت (download) کرده باشید، ممکن است نمونه های متفاوتی را ببینید.
عموماً ، این نگارشها دو دسته هستند: کلاس های پایه ای جاوا یا jfe و اپلت ها.
ما اصلاً از اپلت ها استفاده نخواهیم کرد، با این وجود اگر آنها تنها نمونه های آزمایشی نرم افزار باشند، برای آزمایش نرم افزار، لازم است از appletviewer استفاده کنید.
به عنوان مثال، JDK استاندارد دارای اپلتی به نام TocTacToe است.
برای آزمایش عملیات نصب توسط این اپلت، دو خط زیر را تایپ کنید: cd c:\jdk1.3\demo\applets\TicTacToe appletviwer example 1.html این فرمان باید بازی کوچک TicTacToe را بیاورد.
در صورتی که در عملیات نصب با مشکلی برخورد کردید، عملیات در مورد عیب یابی در این آدرس وجود دارد: http://java.sun.com/j2see/1.3/install-windows html#trobleshooting یا سایتی که خود JDK را از آن دریافت کرده اید.
نصب تجزیه کننده Xerces-J اکنون که جاوا نصب شده است و کار می کند لازم است تجزیه کننده واقعی را نصب کنیم که برای بررسی داده های خود از آن استفاده خواهیم کرد.
توسعه نرم افزار، مخصوصاً آنهایی که در برگیرنده XML هستند، بر طبق نظریه API یا واسط برنامه نویسی کاربردی می باشد.
این نوع، مشابه زبانی کوچکی است که دارای یک لغت نامه می باشد، در لغت نامه هر فرمان یا کلمه، معنی خاصی دارد.
برنامه های کاربردیی که از همان API استفاده می کنند، می توانند با یکدیگر صحبت کنند.
به دلیل اینکه، تعداد زیادی از برنامه های مربوط به XML به صورت پیمانه ای هستند، (بر اساس تمایل تولید کننده) در برنامه های کاربردی مختلف می توانند به منظور مشترکی استفاده شوند.
اصطلاح جدید: رابط برنامه نویسی کاربردی (API)- یک API مجموعه ای از فرمانهایی است که برنامه نویسان برای انجام وظایف خاصی از آن استفاده می کنند.
در صورتی گفته می شود یک برنامه با یک API پیاده سازی شده است که آن فرمانها بتوانند آن وظایف را انجام دهند.
اصطلاح جدید: پیمانه ای (Modulator)- یک برنامه پیمانه ای، برنامه ای است که هر بخش کد، بدون تاثیر بر بقیه برنامه می تواند عوض شوند.
این مطلب در مورد تجزیه کننده ها نیز صادق است.
تجزیه کننده های زیادی در دسترس هستند، اما یکی از رایجترین آنها Xerces از Apache Project می باشد.
Apache Project پروژه ای به صورت منبع- باز است که Apache Web server و محصولات پایه ای زیاد دیگری را برای وب تولید کرده است.
شرکتهای متعددی از قبیل، آی بی ام، سان و مایکروسافت پروژه هایی را به Apache اهدا کرده اند که آنها را برای مصرف عمومی و کارکردن به صورت رایگان در دسترس گذاشته اند.
Xerces و مخصوصاً نمونه جاوای آن ، Xerces-J، تجزیه کننده اصلی ای است که با اغلب برنامه های کاربردی تجزیه XML به کار می روند (مانند (XML4J)) از شرکت JAXP, ABM از شرکت سان) ما مستقیماً از این استفاده خواهیم کرد تا نکات مورد بحث در نصب را آسان کنیم.
نصب Xerces-J تجزیه کننده Xerces-J در سایت زیر پیدا می شود: Htpp://xml.apache.org/xerces-j/index.html نگارش فعلی 1.2.3 می باشد، اما اکنون باید به حقیقت توسعه XML توجه کرد و اینکه بعضی چیزها تغییر داده می شود.
خصوصاً، پیاده سازی استانداردهای Xerces هنوز به پایان نرسیده است بنابراین، اگر تغییراتی به وجود آید، Xerces به کار خود ادامه خواهد داد و این خصوصیات فعلی را حفظ خواهد کرد.
همچنین، کمی قبل گروهی که روی پروژه Xerces-J کار می کرد تصمیم گرفت بیشتر تمرکز کاری خود را برای افزودن سادگی و یک API جدید به نام JDOM تغییر دهد.
به احتمال زیاد، اغلب این عملکردها پیاده سازی خواهند شد، اما اکنون ما از API های موجود استفاده می کنیم.
مساله مهمی که باید یادآوری کرد این است که با وجود اینکه شاید ترکیب نحوی خاصی تغییر کند، مفاهیم به همان شکل باقی می مانند.
در صورتی که از یک نگارش جدید استفاده می کنید و به نظر می رسد بعضی چیزها درست کار نمی کنند، برای مشاهده اینکه آیا تغییر کرده اند یا خیر، سندهای ارائه شده را بررسی کنید.
برای دریافت خود تجزیه کننده، روی دکمه Download کلیک کنید و، به دنبال فهرستهایی بگردید که به صورت "Latest Binaries" می باشد.
فایل zip را از روی اینترنت دریافت کنید و آن را در همان شاخه ای که Java SDK را نصب کردید (نه شاخه خود جاوا) بگذارید.
بنابراین در صورتی که شاخه جاوا C:\jdk1.3 باشد، فایل zip ار در C:\ بگذارید.
برای خارج کرد ن فایل ها از حالت فشرده، از یک فایل جاوا به نام jar استفاده می کنیم.
به شاخه ای که فایل zip را گذاشته اید بروید و تایپ کنید: Jar Xerces-J_bin.
1.2.3 zip این کار چند دقیقه ای وقت می گیرد و در نهایت شاخه ای به نام Xerces-1-2-3 در آنجا می سازد.
تنظیم CLASSPATH Xerces برای درست کردن به تنظیم CLASSPATH نیاز دارد.
( به تنظیم PATH هم نیاز دارد ولی ما آن را از قبل تنظیم کرده ایم.) خط زیر را به همان روشی که در طی مدت نصب Java.SDK، شاخه جاری اضافه کردیم به CLASSPATH خود اضافه کنید.
C:\xerces-1_2_3\xerces.jar;c:\xerces- 1_2_3\xercesSample.jar; به عنوان مثال در ویندوز 95 یا 98 این خط را در فایل AUTOEXEC.bat باید به این شکل خواند: SET CLASSPATH=.;C:=\xerces-1-2-3\xerces.jar; C:\xerces-1_2_3\xercesSamples.jar; به خاطر داشته باشید که اگر در جای دیگری نصب کرده باشید، تنظیمات را بر طبق آن باید انجام دهید.
در ویندوز 95 یا 98 این تغییرات تا زمانی که AUTOEXEC.bat را اجرا نکرده اید، تاثیری نخواهد داشت.
اگر آن را به طور دستی اجرا کنید، تغییرات فقط بر آن پنجره اعمال خواهد شد.
بعد از راه اندازی مجدد کامپیوتر، تغییرات بر تمام پنجره ها تاثیر خواهند گذاشت.
توجه: اگر روی یونیکس نصب می کنید، باید (;) را به صورت (:) تغییر دهید و (/) را به صورت (|)، همچنین باید مرجع درایو C: را حذف کنید.
آزمایش عملیات نصب اگر همه چیز به خوبی پیش رود، اکنون شما یک تجزیه کننده فعال دارید که روی سیستم خود نصب کرده اید.
به هر حال، مثلاً برای شروع برنامه نویسی با آن اصلاً آمادگی نداریم، بنابراین همانند جاوا با یکی از نمونه ها عملیات نصب را آزمایش می کنیم.
در اینجا، نمونه بسیار مفیدی ارائه شده است.
نمونه SAXCount یک فایل XML را برای تعیین بعضی از ویژگیهای تحلیل می کند، مثلاً اینکه فایل شامل چه تعداد عناصر یا فضاهایی است و خروجی آن روی صحفه نمایش چیست.
علاوه بر اینکه این نمونه بسیار مفید و مناسب است، در مدت زمان کوتاهی خواهید دید که به ما شانس مقدار دهی کردن داده ها را نیز می دهد.
به منظورآزمایش عملیات نصب فایل AUTOEXEC.bat را اجرا (یا کامپیوتر را دوباره راه اندازی کنید) و سپس دو خط زیر را تایپ کنید: cd c:\xerces-1_2_3 java sax.SAXCount data/personal.xml-v این فرمان به جاوا می گوید برنامه SAXCount را برای تحلیل فایل personal.xml در شاخه data اجرا کند و تا زمانی که آن در برنامه است، فایل را با ساختار تعریف شده مقایسه کند، شما باید یک خروجی مشابه زیر ببینید.
data/personal.xml:2250 ms(37 elems, 18 attrs, 150 spaces 128 chars) اگر با خطایی برخورد کردید که به شما می گوید کلاس، تعریف نشده است یا پیدا نمی شود، از اینکه CLASSPATH برای آن پنجره به فایل های Xerces مراجعه می کند، مطمئن شوید.
اگر لازم شد، در فایل AUTOEXEC.bat تغییراتی به وجود آورید و ماشین را دوباره راه اندازی کنید.
اگر برنامه برای انجام وظیفه خوب و درست ظاهر شد ولی خود فایل XML به همراه خطاهایی به نمایش درآمد، تجزیه کننده به درستی مقدار دهی نمی شود و این خطا ممکن است از فایل های کلاس قدیمی در CLASSPATH شما باشد.
اگر آنها را نمی توانید پاک کنید، حداقل مطمئن شوید که آنها بعد از کلاس جدید ظاهر شوند.
پردازشگرهای XSL قبل از اینکه هر نرم افزاری را از روی اینترنت دریافت کنیم، اجازه دهید در مورد اینکه به چه چیزی می رسیم صحبت می کنیم.
راجع به نحوه تبدل XML در مرورگر بسیار صحبت کردیم.
آن صحبتها درست نیستند.
در واقع کاری که در تبدیل صورت گرفت این بود که، یک پردازشگر XLS کار می کرد تا کد XML را به چیزی ترجمه کند که مرورگر بفهمد.
این کار را با شیوه نامه انجام دادیم و اهمیت موضوع در این است که متوجه می شویم این کار انعطاف پذیری زیادی فراهم می کند.
به عنوان مثال، می توانیم XML خود را نه تنها به HTML بلکه به هر چیزی تبدیل کنیم.
XML را می توان به Plain text, Scalable Vector Graphics, HTML یا حتی مجموعه ای متفاوتی از برچسبهای XML تبدیل کرد.
رمز کار این است که بدانیم در هر زمان کدام یک از آنها کاربردی است؟
Xalan تجزیه کننده های XML و پردازشگرهای XSL معمولاً همیشه در کنار هم هتسند.
اغلب برنامه نویسانی که از تجزیه کننده Xerces XML استفاده می کنند، از پردازشگر xalan XSL نیز استفاده می کنند که از Apache Project به دست می آید.
برای دریافت Xalan به آدرس زیر مراجعه کنید: http: // xml.apache.org/xalan-j/index.html این صفحه، لینکی به آخرین نگارش Xalan-Java2 دارد.
هشدار: حتماً نگارش 2 از Xalan-Java از روی اینترنت دریافت شود (نگارش 1 کافی نیست) API کاملاً متفاوت است و اکثر کارهایی که ما انجام می دهیم با نگارش 1 کار نمی کند.
نصب Xalan پس از دریافت فایل *zip یا *tar (که به محیط کاری شما بستگی دارد) آن را به وسیله unzip یا uncompress از حالت فشرده خارج کنید.
اگر آن را در شاخه اصلی بگذارید به شاخه ای مشابه این می رسید: c: \xalan.j_2_0_D05 برای راحتی کار، آن را به این صورت تغییر دهید: c: \xalan بعد از اینکه فایلها نصب شدند، باید CLASSPATH را در سیستم به روزرسانی کنیم.
CLASSPATH را به این شکل تنظیم می کنیم: CLASSPATH=0;c:\xalan\bin\xerces.jar;c:\xalan\bin\xalan.jar در این خط همه چیز برای انجام گرفته شده است.
توجه: اگر فایل ها را در شاخه دیگری نصب کردید، برای اطمینان خاطر تغییرات مناسب را مشابه CLASSPATH قبلی ایجاد کنید.
توجه کنید که در واقع این CLASSPATH را جایگزین کنید: به جای آنکه این را به آن اضافه کنیم، اکنون به نگارشی از Xerces که در شاخه Xalan است، اشاره می کنیم.
دلیل خوبی برای این کار وجود دارد.
معمولاً بهتر است بیشتر از یک نگارش برنامه خاص خود را روی ماشین خود نداشته باشیم.
زیرا Xerces جدیدتر یا قدیمتری، ممکن است مشکل به وجود آید.
برای پیشگیری از بروز چین مشکلاتی، نگارشی را که به همراه Xalan می آید در CLASSPATH لیست می کنیم.
جاوا همیشه مکانها را به ترتیبی که در CLASSPATH نمایش داده شدند، بررسی می کند.
در این صورت، اگر نگارش دیگری در یک جای ماشین داشته باشیم، مشکلی پیش نمی آید.
اجرای فایل AUTOEXEC.bat را فراموش نکنید، در این صورت CLASSPATH جدید اثر می کند.
آزمایش عملیات نصب همان طور که در مورد Xerces انجام دادیم، از نمونه ای که همراه Xalan ارائه شده است برای آزمایش عملیات نصب استفاده خواهیم کرد.
کلاس Simple Transform در جاوا، فایل birds.xml را می گیرد و با استفاده از شیوه نامه birds.xsl آن را تبدیل می کند.
متن نتیجه به فایل birds.out فرستاده می شود.
سرانجام، آماده آزمایش عملیات نصب شدیم.
ابتدا، باید Simple Transform.java را کامپایل کنیم.
هنگام نوشتن برنامه های خود، در فرآیند دقت بیشتری خواهیم داشت.
اما در حال حاضر تنها پنجره اعلان فرمان را باز و خط زیر را تایپ می کنیم: cd c: \xalan\samle Transform javac Simple Transform.
Java java Simple Transform خروجی باید مطابق زیر باشد: *************The result is in brids.out ************* فایل birds.out را با هر فایل متنی می توانید باز کنید.
باید لیستی از کلاس ها و انواع bird را ببینیم.
اگر به خطایی برخورد کردیدکه می گوید کلاس را نمی توانید پیدا کند، مطمئن شوید که CLASSPATH را درست تنظیم کرده باشید و در صورتی با خطایی مواجه شدید که می گوید برنامه نمی توانند فایل birds.xml را بخواند، از اینکه هر دو فایل birds.xml و birds.xsl در همان شاخه Simple Transform باشند اطمینان حاصل کنید.
اگر خطایی وجود نداشته باشد، اکنون یک پردازشگر XSL نصب شده دارید که کار می کند.
افزودن یک سرویس دهنده وب به محتوای مرکب (Mix) با وجود اینکه هدف، ساختن یک سایت وب است اما تا به حال درباره یکی از مهمترین نکات که خود سرویس دهنده وب است توضیحی نداده ایم.
گاهی اوقات، روش کار باید این طور باشد یک سرویس دهنده وب باید در زمینه بنشیند، توجهی نکند و بسیار آرام کار خود را انجام دهد.