شناسانه منبع یکسان

**شناسانهٔ منبع یکسان**  با کوته‌نوشت **یوآرآی**  رشته‌ای از نویسه‌ها است که به صورت غیر مبهم یک منبع به‌خصوص را شناسایی می‌کند. برای اطمینان از یکسان بودن، همهٔ URIها باید از مجموعه قواعد نحوی از پیش تعیین شده‌ای پیروی کنند، اما گسترش پذیری از طریق طرح نامگذاری سلسله مراتبی که به صورت مجزا تعریف می‌شود (مثل `http://`) قابل انجام است.

این شناسایی (URI)، تعامل با نمایش‌های منبع روی یک شبکه (معمولا وب جهان‌گستر) توسط پروتکل‌های خاص را ممکن می‌سازد. نقش طرح‌ها، تعیین ترکیب نحوی به‌خصوص و پروتکل مرتبطی که هر URI را تعریف می‌کند، می‌باشد. معروف‌ترین قالب یک URI مکان‌یاب منبع یکسان (URL) است، که به صورت معمول و به صورت غیررسمی «نشانی وب» نامیده می‌شود. مفهوم «نام منبع یکسان» (URN) که در عمل کمتر دیده می‌شود، برای تکمیل URLها از طریق فراهم کردن سازوکاری برای شناسایی منابع در فضای نام به‌خصوص، می‌باشد.

## ترکیب نحوی همگانی

### تعریف
هر URI با یک نام «برنامه واکشی» (طرح) شروع می‌شوند، که به مشخصات برای شناسه‌های منتسب شده در آن طرح ارجاع دارد. ترکیب نحوی URI یک سیستم نامگذاری هم‌عهد شده و قابل گسترش است که در آن هر مشخصات طرح می‌تواند ترکیب نحوی و معنای شناسه‌هایی که از آن طرح استفاده می‌کنند را تعیین کند. ترکیب نحوی همگانی URI یک فرامجموعه از ترکیب نحوی برای همهٔ طرح‌های URI می‌باشد. ترکیب نحوی همگانی URI در ابتدا در درخواست نظر (RFC) شماره ۲۳۹۶، که در اوت ۱۹۸۸ منتشر شد، تعریف شد، و در ، که در ژانویه ۲۰۰۵ منتشر شد، نهایی سازی گردید.

ترکیب نحوی همگانی URI شامل یک ترتیب سلسله مراتبی از پنج جزء می‌باشد:
```text
URI = scheme:[//authority]path[?query][#fragment]
```
که در آن جزء متصدی به سه زیر جزء تقسیم می‌شود:
```text
authority = [userinfo@]host[:port]
```
این موضوع در یک نمودار ترکیب نحوی به صورت زیر نمایش می‌یابد:
وسط|قاب|ترکیب نحوی همگانی برای URI.
URI شامل:

#### برنامه (طرح) واکشی (Scheme)
یک جزء طرح غیر خالی، که بعد از آن کالن (:) می‌آید، شامل ترتیبی از نویسه‌ها است که با یک حرف شروع می‌شود، و با ترکیبی از از حروف، اعداد، جمع (+)، نقطه (.)، یا خط پیوند (-) ادامه می‌یابد. اگرچه طرح‌ها حساس به حالت نیستند، حالت رسمی، حروف کوچک است، و اسنادی که طرح‌ها را مشخص می‌کنند، باید از همین حروف کوچک استفاده کنند. مثال‌هایی از طرح‌های مردمی شامل: http, https, ftp, mailto, file, data و irc می‌باشد. طرح‌های URI، باید توسط متصدی انتساب اعداد در اینترنت (آیانا) ثبت گردند، اگرچه طرح‌های ثبت نشده در عمل استفاده می‌شوند.

درحالی‌که بیشتر طرح‌های URI از ابتدا برای استفاده با پروتکل به‌خصوصی طراحی شده‌اند، و معمولاً هم نام مشابهی دارند، آنها از نظر معنایی با پروتکل‌ها متفاوتند. برای مثال طرح http، معمولاً برای تعامل با منابع وب، با استفاده از HTTP استفاده می‌شود، اما طرح file، پروتکلی ندارد.

#### متصدی (Authority)
جزء متصدی اختیاری، که قبل از آن دو اسلش (//) می‌آید، شامل:

##### مشخصات کاربری (UserInfo)
یک مشخصات کاربری اختیاری که می‌تواند شامل یک نام کاربری و یک گذرواژه اختیاری باشد که قبل از آن یک کالن (:) می‌آید و بعد از آن یک نماد ات (@) می‌آید. استفاده از فرمت `username:password` در مشخصات کاربری به دلایل امنیتی منسوخ شده‌است. برنامه‌های کاربردی نباید هیچ داده‌ای را به عنوان متن عادی، بعد از کالن اول (:) که در زیرجزء مشخصات کاربر دیده می‌شود تحویل دهند، مگر آنکه داده‌ای که بعد از کالن می‌آید، یک رشتهٔ خالی باشد (نشان دهندهٔ نبود گذرواژه).

##### میزبان (host)
یک زیرجزء میزبان(host)، شامل یا یک نام ثبت شده (شامل اما نه محدود به یک نام میزبان)، یا یک آدرس IP. آدرس‌های IPv4 باید در نشانه گذاری نقطه-عددی، و آدرس‌های IPv6 باید در براکت ([]) قرار گیرند.

##### درگاه (port)
یک درگاه (port) اختیاری که قبل ار آن یک کالن می‌آید (:).

#### مسیر (Path)
یک جزء مسیر، شامل یک ترتیب از بندهای مسیر که توسط اسلش (/) جداسازی می‌شوند. یک مسیر همیشه برای یک URI تعریف می‌شود، اگرچه مسیر تعریف شده می‌تواند خالی باشد (طول صفر). یک بند می‌تواند خالی باشد، و این منجر به دو اسلش پشت سر هم (//) در جزء مسیر می‌شود. یک جزء می‌تواند مشابه یا دقیقاً متناظر با یک مسیر سیستم فایل باشد، اما همیشه به معنی یک رابطه به یکی از آنها نیست. اگر یک جزء متصدی موجود باشد، آنوقت جزء مسیر باید یا خالی باشد، یا با یک اسلش (/) شروع شود. اگر جزء متصدی موجود نباشد، آنوقت مسیر نمی‌تواند توسط یک بند خالی (یعنی با دو اسلش //) شروع شود. زیرا این نویسه‌ها می‌تواند می‌تواند به صورت یک جزء متصدی تفسیر شود. بند نهایی یک مسیر «حلزونی» یا slug نامیده می‌شود.

#### پرس‌وجو (Query)
یک پرس‌وجوی اختیاری که قبل از آن علامت سؤال (؟) می‌آید، و شامل یک رشته پرس‌وجو برای دادهٔ غیر سلسله مراتبی است. ترکیب نحوی آن خوش-تعریف نیست، اما رسم آن است به صورت معمول یک ترتیب از جفت‌های ویژگی-مقدار باشد که توسط یک حائل از هم جدا می‌شوند.

#### پاره منبع (Fragment)
یک «پاره‌منبع» اختیاری که قبل از آن هش (#) می‌آید. این پاره‌منبع شامل یک شناسه به پاره‌منبع است که مسیری به یک منبع ثانویه تهیه می‌کند، مثال آن عنوان بخش در یک مقاله است، که توسط یک پاره‌منبع URI شناسایی می‌شود. وقتیکه منبع اولیه یک سند HTML است، باقیمانده ویژگی id برای یک عنصر به‌خصوص است، و مرورگرهای وب، این عنصر را به اسکرول می‌کنند (Scroll).

## رابطه بین [[URL]] (یوآرال)،  URN  (یوآران) و [[URI]] (یوآرآی)
بندانگشتی|رابطه بین URN, URL و URIیک نام منبع یکسان (URN) یک نوع URI است که یک منبع را در یک فضای نام به‌خصوص، با نام آن شناسایی می‌کند. از URN می‌توان برای صحبت دربارهٔ یک منبع، بدون توجه به محل آن یا نحوهٔ دسترسی به آن استفاده کرد. برای مثال، در یک سیستم شماره استاندارد بین‌المللی کتاب (ISBN)، شمارهٔ *ISBN 0-486-27557-4* یک ویرایش به‌خصوص از نمایشنامه شکسپیر *[[رومئو و ژولیت]]* را شناسایی می‌کند. URN برای آن ویرایش  می‌باشد. با این حال، این عدد هیچ اطلاعاتی دربارهٔ محل یافتن یک کپی از آن کتاب را نمی‌دهد.

یک مکان یاب منبع یکسان (URL) یک نوع URI است که هم روش عمل کردن در برابر و هم روش به دست آوردن یک نمایش از منبع را مشخص می‌کند، یعنی هم سازوکار دسترسی اولیه و هم محل شبکهٔ آن را مشخص می‌کند. برای مثال، URL با آدرس  به یک منبع که با `/wiki/Main_Page` شناسایی می‌شود ارجاع می‌کند، که نمایش آن، در قالب HTML و کدهای مرتبط، از طریق پروتکل انتقال ابرمتن (http:) از یک میزبان شبکه که نام دامنه ی آن `example.org` قابل دسترسی است.
بندانگشتی|رابطهٔ بین URI و URL.
URN می‌تواند با نام یک فرد مقایسه شود، درحالی‌که URL می‌تواند با آدرس خیابان او مقایسه شود. به زبان دیگر، URN یک آیتم را شناسایی می‌کند، و URL یک روش برای یافتن آن تهیه می‌کند.

نشریات فنی، مخصوصاً استانداردهای تولید شده توسط IETF و W3C، معمولاً یک دید عنوان شده در پیشنهاد W3C در سال ۲۰۰۱، را بازتاب می‌دهند، که در این دید ارجحیت عبارت URI نسبت به قبول هر تقسیم‌بندی رسمی به URL و URN را می‌پذیرد.

بنابراین، یک URL به سادگی یک URI است که برای اشاره به یک منبع روی یک شبکه استفاده می‌شود. با اینحال، در زمینه‌های غیر فنی، و در نرم‌افزارها برای وب جهان‌گستر، از عبارت URL بسیار استفاده می‌شود. به‌علاوه، عبارت «آدرس وب» (که هیچ تعریف رسمی ندارد) معمولاً در نشریات غیر فنی، به عنوان مترادفی برای URI، که از طرح‌های http یا https استفاده می‌کند، دیده می‌شود. این فرضیات می‌تواند منجر به سردرگمی شود، برای مثال در فضای نام XML که یک مشابهت دیداری با URIهای قابل حل دارند، این سردرگمی دیده می‌شود.

خصیصه‌های ایجاد شده توسط WHATWG، عبارت URL را به URI ترجیح می‌دهد، و بنابراین API‌های HTML5 جدیدتر از URL به جای URI استفاده می‌کنند.

## مقالات وابسته
* نشانی وب

## منابع


رده:استانداردهای اینترنت
رده:پروتکل‌های اینترنت
رده:پروتکل‌های لایه کاربرد
رده:نشانی وب
رده:وب معنایی
رده:طرح یوآرآی