<?php 
// authors should fill in these assignments:
$directory = 'getting-started/'; // the directory path below /International up to but not including the file name: must end in a slash! 
$filename = 'language'; // the file name WITHOUT extensions
$authors = 'Richard Ishida, W3C'; // author(s) and affiliations
$modifiers = ''; // people making substantive changes, and their affiliation
$searchString = 'gs-language'; // blog search string - usually the filename without extensions
$firstPubDate = '2007-03-08'; // date of the first publication of the document (after review)
$lastSubstUpdate = '2009-05-01  12:47';  // date of last substantive changes to this document
$pathtophp = '../php'; // authors should check that the following points to /International/php - must be relative path

// authors AND translators should fill in these assignments:
$clang = 'en'; // the language extension for articles in this language (use 'en' for English)
$thisVersion = '2011-10-10  10:37'; // date of latest edits to this document/translation

// translators should fill in these assignments:
$translators = 'xxxNAME, ORG'; // translator(s) and their affiliation - a elements allowed, but use double quotes for attributes
$translatorContact=""; // please add email. This is not displayed, it allows the translation coordinator to contact you if needed in future.

include($pathtophp.'/bp3/boilerplate-'.$clang.'.php');

$breadcrumbs = <<<eot
<a href='/International/'>$s_home </a> &gt; <a href='/International/resources'>$s_resources</a> &gt; <a href='/International/articlelist#language'>$s_articles</a>
eot;

$toc = <<<eot
<div id="toclocation"><!-- placeholder --></div>
eot;

$additionalLinks = <<<eot
<h2><a id="links" name="links" tabindex="4">$s_relatedLinks</a></h2>
<p><a href="/International/getting-started/">Getting started</a></p>
eot;
include($pathtophp.'/bp3/structure.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html <?php echo "lang='$clang' xml:lang='$clang'";?> xmlns="http://www.w3.org/1999/xhtml">
<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Language on the Web</title>
		<meta name="keywords"
		 content="i18n internationalisation internationalization localisation localization translation language tags, language declarations" />
		<meta name="description"
		 content="Pointers for the newcomer to useful introductory information on the W3C Internationalization subsite about language on the Web." />
<?php echo $headincludes;?>

<link rel="stylesheet" href="/International/style/article-standards-v2.css" type="text/css" />
<style type="text/css" media="all">
.sidenote {line-height: 110%; padding-bottom: 20px;  }
</style>
</head>

<body>
		<span id="version-info" style="display: none;"><!-- #BeginDate format:IS1m -->2011-10-10  10:37<!-- #EndDate --></span> <?php echo $topOfPage; ?>

		<h1>Language on the Web</h1>

		<div class="section"><a id="contentstart" name="contentstart"></a> 
			<div id="audience"> 
				<p><?php echo $intendedAudience?> anyone who is new to internationalization and needs guidance on topics to consider and ways to get into the material on the site. </p>
			<?php echo $updated; ?>
			</div>
			
			<p>This page provides some orientation for newcomers to Web internationalization who don't really know where to start. The aim is to ease you gently into some of the material on the site.</p>
			<p>You can find a selection of more detailed articles using the links to the right. Once you get some ideas from this page, you will probably just use the <a href="/International/resource-index">topic index</a>, the <a href="/International/technique-index">techniques index</a>, or the site search.</p>
</div>
		<div class="section"> 

			<h2><a id="what" name="what" tabindex="1">What's it about?</a></h2>
				<div class="insidenote"> <strong>Learn more...</strong>
					<p><a href="/International/tutorials/language-decl/#Slide0030"> Why declare language?</a> discusses why, in a little more detail, content authors and developers should declare language information. </p>
				</div>
				<p>HTML and XML-based formats allow you to declare the natural language (ie. human rather than program language) of a document or a range of
				text so that tools and applications can use that information for language-sensitive tasks. These include things such as applying appropriate fonts or
				other styling, switching voice in text to speech, spell-checking, etc. </p>
				<p>The more content is tagged and tagged correctly with language information, the more useful and pervasive such applications will
					become.</p>
				<p>It is also possible to use language information provided by a browser or user agent to ensure that, where a choice exists, users receive
					data in their preferred language.</p>
</div>
<br clear="all" style="clear:both;" />
		<div class="section"> 

			<h2><a id="declaring" name="declaring">Declaring the language</a></h2>
			<div class="sidenoteGroup">
				<p>Content authors need to know how to declare the language of a document or range of text in the Web technology they are dealing with. Most
				XML-based formats, such as XHTML, SVG, SSML, etc. will make use of the xml:lang attribute defined by the XML specification, but there may be other
				markup, such as the lang attribute in HTML.</p>
				<p>Content authors should consider whether you need to make a difference between declaring the language of a document or range of text so
					that tools can process it, and declaring the intended audience of a resource (ie. metadata). You may need to apply slightly different approaches for
					these in (X)HTML, for example. You should also avoid confusing language declarations with script and character encoding declarations.</p>
				<p>Content authors and webmasters also need to know how to use values for languages in a standard way. The current standard approach for W3C
					specifications is to use the rules expressed in BCP 47. This replaces earlier specifications such as RFC 3066 and RFC 1766, and goes beyond
					information available in the ISO language and country standards. You should also use the IANA Language Subtag Registry to look up language tags,
					rather than the ISO specifications.</p>
				<p>Web masters or people working with server settings may also need to set up the server so that it sends language-related HTTP information with requested files. This is typically done as part of content-negotiation, where the server sends the user one of several alternative versions of a document depending on the settings of the users browser.</p>
				<div class="sidenote"> <strong>Learn more...</strong>
					<p>HTML &amp; CSS authors<br />
					<a href="/International/techniques/authoring-html#textprocessing">Using attributes to declare language</a><br />
					<a href="/International/techniques/authoring-html#primarylanguage">Declaring metadata about the language of the intended audience</a><br />
					<a href="/International/techniques/authoring-html#multprimary">Declaring language for documents aimed at speakers of more than one language</a></p>
					<p>SVG authors<br />
					<a href="/International/techniques/authoring-svg#natlang">Specifying the language of content</a></p>
					<p>XML authors<br />
						<a href="/International/techniques/authoring-xml#natlang">Specifying the language of content</a></p>
					<p>Server setup<br />
					<a href="/International/techniques/server-setup#multiviews">Setting up MultiViews language negotiation on Apache</a><br />
					<a href="/International/techniques/server-setup#phpcontentneg">Setting up PHP-based language negotiation</a></p>
				</div>
			</div>
		</div>
<br clear="all" style="clear:both;" />
		<div class="section"> 

			<h2><a id="server" name="server">Navigating around sites using language information</a></h2>
			<div class="sidenoteGroup">
				<p>When an HTTP request is made to a server, the requesting user agent usually sends information about language preferences. The server can
				then use this information to return a version of the document in the appropriate language if such an alternative is available.</p>
				<p>End-users should know how to check that their language preferences are correctly set, and how to change them if not.</p>
<p>Webmasters should know how to set up their server to manage language-based content negotiation.</p>
				<p>Web designers and developers dealing with multilingual sites should consider how to guide visitors to the right resources.</p>
				<div class="sidenote"> <strong>Learn more...</strong>
					<p>User settings<br />
						<a href="/International/techniques/users#browserlanguage">Setting &amp; changing browser language preferences</a></p>
					<p>HTML &amp; CSS authors<br />
						<a href="/International/techniques/authoring-html#gsnavigation">Getting started with navigation</a><br />
						<a href="/International/techniques/authoring-html#linkloc">Linking to localized content
</a><br />
				<a href="/International/techniques/authoring-html#contentneg">Using content negotiation</a></p>
				</div>
			</div>
		</div>
<br clear="all" style="clear:both;" />
<div class="section">
<h2><a id="style" name="style">Using language information for styling</a></h2>
			<div class="sidenoteGroup">
				<p>On most browsers, you can use CSS selectors to apply different styling according to the language of a range of text.  For example, within an English document you can assign embedded Thai text a particular font and appropriate line height adjustments
				anywhere it appears, just by the fact that the content is labeled as Thai.</p>
				<p>In CSS, style sheet developers can use  selectors with the <code>content</code> property, where it is supported, to automatically
				  indicate the language of a link target.</p>
				<div class="sidenote"> <strong>Learn more...</strong>
					<p>User settings<br />
					<a href="/International/techniques/users#browserlanguage">Setting &amp; changing browser language preferences</a></p>
					<p>HTML &amp; CSS authors<br />
						<a href="/International/techniques/authoring-html#langstyle">Styling by language</a><br />
						<a href="/International/techniques/authoring-html#linkdestination">Indicating the language of a link destination </a></p>
				</div>
	</div>
</div>
<br clear="all" style="clear:both;" />
		<div class="section"> 

			<h2><a id="schemas" name="schemas">Designing language information into markup formats</a></h2>
			<div class="sidenoteGroup">
				<p>Schema or specification developers should consider whether the format they are developing includes markup to enable authors to identify
				the document's main language and any changes in language within the document.</p>
				<p>Schema or specification developers should also be clear when it is appropriate to use xml:lang in XML-based formats, and when they should
					create a different attribute or element to specify language information.</p>
				<div class="sidenote"> <strong>Learn more...</strong>
					<p>Schema developers<br />
					<a href="/International/techniques/developing-schemas#natlang">Defining markup for labelling natural language</a></p>
				</div>
			</div>
		</div>
<?php echo $bottomOfPage; ?>

	</body>
</html>

