xsl چيست

xsl سر نام هاي eXtensible Stylesheet Language مي باشد.يک xsl شامل دستورالعمل هايي براي شکل دهي به محتويات يک فايل xml مي باشد. قالب کلي يک فايل xsl را مي توانيد با وارد کردن آدرس res://msxml.dll/defaultss.xsl در قسمت آدرس مرورگر خود مشاهده نماييد.اين يک مثال کامل از يک سند xsl است که براي آشنايي اوليه و يافتن يک ديد کامل مناسب خواهد بود.

نتيجه تبديل و فرمت دهي يک سند xml بوسيله xsl مي تواند به صورت يک فايل html يا يک فايل xml ديگر باشد که در اينجا ما در مورد تبديل به يک فايل html صحبت خواهيم کرد.

» xslt
عمل تبديل xml بوسيله xsl را xslt گويند(xsl transform). براي انجام عمل تبديل به يک پردازنده xslt نياز داريم تا داده هاي سند xml و دستورالعمل هاي xsl را بخواند و بر اساس آن دستورالعمل ها داده ها را در خروجي html بنويسد.مي توانيد اينکار را با برنامه نويسي c# و استفاده از موتور xslt موجود در c#.net انجام دهيد و يا از پردازنده هاي xslt جداگانه اي که نمونه هايي از آنها به صورت رايگان موجود مي باشد استفاده نماييد.يک پردازنده خط فرمان رايگان از آدرس ttp://jclark.com/xml/xt.html قابل دريافت مي باشد.نحوه استفاده از اين پردازنده خط فرمان در مثال زير مشخص شده است:

xt source.xml stylesheet.xsl result.html

يکي ديگر از ويرايشگرهاي موجود ، ويرايشگر XRay XML Editor مي باشد که از آدرس http://www.architag.com/xray قابل دريافت مي باشد.اين ويرايشگر جالب در داخل خود امکان توليد اسناد xml و xsl و در نهايت توليد html خروجي را فراهم مي کند.

» يک مثال
فکر کنم بهترين روش براي يادگيري استفاده از يک مثال باشد.فرض کنيد داده هاي خود را در يک فايل xml به صورت زير داريم و مي خواهيم آنرا در يک فايل html نمايش دهيم.

<MySite>
<Links>
<title>يک سايت فوق العاده جالب!</title>
<url>http://yahoo.com</url>
<description>اين سايت شايد اولين سايتي باشد که.. </ description>
</Links>
<Links>

<title>دنبال جي هستيد؟</title>

<url>http://www.google.com</url>
<description>جستجو در اينترنت</ description >
</Links>
</MySite>

براي تبديل اين سند xml به html از يک فايل xsl به صورت زير استفاده کرده ايم:

<?xml version=”1.0″ encoding=”UTF-8″?>
<xsl:stylesheet version=”1.0″
xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>;
<xsl:output method=”html”/>
<xsl:template match=”MySite”>
<HTML>

<HEAD>
<TITLE>Links</TITLE>
</HEAD>
<BODY>
<H2>Links</H2>
<xsl:for-each select=”Links”>

<a href=”{url}”>
<xsl:value-of select=”title”/><br/>
</a>

<xsl:value-of select=”description”/><br/>
<hr/>
</xsl:for-each>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>

xsl نوعي سند xml است و بهمين دليل در خط اول آن از اعلان xml استفاده شده است.تگ stylesheet تگ ريشه يک سند xsl است که دو صفت Version و namespace آن مقداردهي مي شود.تنها يک نسخه از xslt ارائه شده است و آنهم ورژن ۱٫۰ آن است.namespace هم مجموعه عناصري که مجاز به استفاده از انها در xsl خواهيم بود را در بر مي گيرد.با استفاده از تگ template عنصري از xml که داده هاي آن بايد مورد استفاده قرار گيرد مشخص مي شود که در اين

 

مثال بالاترين عنصر در سند xml عنصر MySite مي باشد.با استفاده از تگ for-each هم براي مجموعه اي از عناصر مشابه يک حلقه تکرار مي شود.نام عنصر در صفت select اين تگ مشخص مي شود که در اين مثال Links است.به ازاي هر کدام از اين عناصر ، محتويات عناصر داخلي آن با استفاده از تگ value-of و آوردن نام عنصر در صفت select آن نمايش داده مي شود.چنانچه بخواهيم محتويات يک عنصر را در داخل يک تگ مثل نمايش دهيم از عبارتي شبيه {url} که url نام عنصر است استفاده مي کنيم.

حال که اسناد xml و xsl مورد نياز آماده شده است به يک پردازنده xslt نياز داريم تا عمل تبديل را انجام دهد.در اينجا از پردازنده xt استفاده مي کنيم:

xt example1.xml example1.xsl example1.htm

منابع:
۱- خودآموز xml تاليف دوان شفرد ترجمه سيد محمود حسيني
۲- wikibooks

VLAN چيست ؟
VLAN چيست ؟
Virtual Local Area Networks) VLAN) ، يکی از جديدترين و جالبترين تکنولوژی های شبکه است که اخيرا” مورد توجه بيشتری قرار گرفته است . رشد بدون وقفه شبکه های LAN و ضرورت کاهش هزينه ها برای تجهيزات گرانقيمت بدون از دست دادن کارآئی و امنيت ، اهميت و ضرورت توجه بيشتر به VLAN را مضاعف نموده است .

وضعيت شبکه های فعلی
تقريبا” در اکثر شبکه ها امروزی از يک (و يا چندين) سوئيچ که تمامی گره های شبکه به آن متصل می گردند ، استفاه می شود . سوئيچ ها روشی مطمئن و سريع به منظور مبادله اطلاعات بين گره ها در يک شبکه را فراهم می نمايند.با اين که سوئيچ ها برای انواع شبکه ها ، گزينه ای مناسب می باشند ، ولی همزمان با رشد شبکه و افزايش تعداد ايستگاهها و سرويس دهندگان ، شاهد بروز مسائل خاصی خواهيم بود . سوئيچ ها ، دستگاه های لايه دوم (مدل مرجع OSI ) می باشند که يک شبکه Flat را ايجاد می نمايند .

همانگونه که در شکل فوق مشاهده می نمائيد ، به يک سوئيچ ، سه ايستگاه متصل شده است . ايستگاههای فوق قادر به ارتباط با يکديگر بوده و هر يک به عنوان عضوی از يک Broadcast domain مشابه می باشند. بدين ترتيب ، در صورتی که ايستگاهی يک پيام broadcast را ارسال نمايد ، ساير ايستگاههای متصل شده به سوئيچ نيز آن را دريافت خواهند داشت.

در يک شبکه کوچک ، وجود پيام های Broadcast نمی تواند مشکل و يا مسئله قابل توجهی را ايجاد نمايد، ولی در صورت رشد شبکه ، وجود پيام های braodcast می تواند به يک مشکل اساسی و مهم تبديل گردد . در چنين مواردی و در اغلب مواقع ، سيلابی از اطلاعات بی ارزش بر روی شبکه در حال جابجائی بوده و عملا” از پهنای باند شبکه،استفاده مطلوب نخواهد شد. تمامی ايستگاههای متصل شده به يک سوئيچ ، پيام های Braodcast را دريافت می نمايند . چراکه تمامی آنان بخشی از يک Broadcast doamin مشابه می باشند .

در صورت افزايش تعداد سوئيچ ها و ايستگاهها در يک شبکه ، مشکل اشاره شده ملموس تر خواهد بود .همواره احتمال وجود پيام های Braodcast در يک شبکه وجود خواهد داشت .

يکی ديگر از مسائل مهم ، موضوع امنيت است . در شبکه هائی که با استفاده از سوئيچ ايجاد می گردند ، هر يک از کاربران شبکه قادر به مشاهده تمامی دستگاههای موجود در شبکه خواهند بود . در شبکه ای بزرگ که دارای سرويس دهندگان فايل ، بانک های اطلاعاتی و ساير اطلاعات حساس و حياتی است ، اين موضوع می تواند امکان مشاهده تمامی دستگاههای موجود در شبکه را برای هر شخص فراهم نمايد . بدين ترتيب منابع فوق در معرض تهديد و حملات بيشتری قرار خواهند گرفت . به منظور حفاظت اينچنين سيستم هائی می بايست محدوديت دستيابی را در سطح شبکه و با ايجاد سگمنت های متعدد و يا استقرار يک فايروال در جلوی هر يک از سيستم های حياتی ، انجام داد .

معرفی VLAN
تمامی مسائل اشاره شده در بخش قبل را و تعداد بيشتری را که به آنان اشاره نشده است را می توان با ايجاد يک VLAN به فراموشی سپرد . به منظور ايجاد VLAN ، به يک سوئيچ لايه دوم که اين تکنولوژی را حمايت نمايد ، نياز می باشد . تعدادی زيادی از افراديکه جديدا” با دنيای شبکه آشنا شده اند ، اغلب دارای برداشت مناسبی در اين خصوص نمی باشند و اينگونه استنباط نموده اند که صرفا” می بايست به منظور فعال نمودن VLAN ، يک نرم افزار اضافه را بر روی

سرويس گيرندگان و يا سوئيچ نصب نمايند . ( برداشتی کاملا” اشتباه ! ) . با توجه به اين که در شبکه های VLAN ، ميليون ها محاسبات رياضی انجام می شود ، می بايست از سخت افزار خاصی که درون سوئيچ تعبيه شده است ، استفاده گردد (دقت در زمان تهيه يک سوئيچ)،در غير اينصورت امکان ايجاد يک VLAN با استفاده از سوئيچ تهيه شده ، وجود نخواهد داشت .