UAI-1 / Інсталяційний набір

Комплект підтримки UAI-1 для C# вебсайтів

На цій сторінці публікується стартове завантаження Protocol5 для додавання підтримки UAI-1 до C# вебсайтів, особливо до сайтів ASP.NET Core, яким потрібен практичний шлях інтеграції CultureInfo і Accept-Language, але без залежності канонічної семантики UAI від локальних людських правил форматування.

Raw / developer layer

UAI language source and developer tools

The public page renders compact UAI as an alternate language layer. JSON, linked registries, and validation schema remain here for developer inspection.

Loading compact UAI language source...
Loading compact source...

Protocol5 is fetching the compact UAI language source before developer JSON.

Language layer

Комплект підтримки UAI-1 для C# вебсайтів

Use the view control to switch between human prose, rendered UAI, and raw developer inspection. The rendered UAI mode keeps this page layout intact and changes only the text layer.

Комплект підтримки UAI-1 для C# вебсайтів

На цій сторінці публікується стартове завантаження Protocol5 для додавання підтримки UAI-1 до C# вебсайтів, особливо до сайтів ASP.NET Core, яким потрібен практичний шлях інтеграції CultureInfo і Accept-Language, але без залежності канонічної семантики UAI від локальних людських правил форматування.

Відомості про документ

Що містить завантаження

  • вихідний проєкт Protocol5.UAI.CSharp
  • зібраний .nupkg для Protocol5.UAI.CSharp
  • допоміжні засоби кодування та декодування Radix 63404
  • middleware ASP.NET Core, який розпізнає UAI-запити з query string, cookie або Accept-Language
  • короткий readme для інсталяції для команд, які надають перевагу прямому завантаженню замість каналу пакетів

Чому starter використовує x-uai-1

Для вебсайтів чистий поділ виглядає так:

  • використовуйте x-uai-1 для HTML lang, узгодження запитів і Content-Language
  • використовуйте CultureInfo.GetCultureInfo("x-uai-1"), коли це підтримує runtime
  • використовуйте CultureInfo.InvariantCulture під час серіалізації канонічних значень UAI

Останнє правило важливе, тому що UAI-1 визначено як канонічну машинну мову. Десяткові роздільники, формати дат і локальні правила відображення ніколи не повинні змінювати серіалізоване значення повідомлення UAI.

Чому це не просто інсталятор культури для Windows

Настанови Microsoft щодо глобалізації роблять важливе розрізнення:

  • CultureInfo — це звичайна точка входу runtime для поведінки, чутливої до культури
  • CultureAndRegionInfoBuilder існує для створення власних культур, але цей шлях прив'язаний до Windows і не є правильною стандартною опцією для кросплатформного впровадження на вебсайтах

Через це цей starter від Protocol5 не вимагає реєстрації користувацької культури на рівні операційної системи. Він спочатку дає вебсайтам практичний шлях, а реєстрацію культур, специфічну для платформи, залишає як необов'язковий просунутий крок.

Швидкий старт

Встановіть пакет із завантаженого файла:

dotnet add package Protocol5.UAI.CSharp --source .\downloads

Після цього підключіть його до сайту ASP.NET Core:

using Protocol5.UAI;

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddProtocol5UaiWebsiteSupport();

var app = builder.Build();
app.UseProtocol5UaiWebsiteSupport();

app.MapGet("/uai-demo", (HttpContext context) =>
{
    var sampleCanonicalId = Radix63404.Encode(5651);

    return Results.Json(new
    {
        protocol = UaiCultureInfo.CanonicalVersion,
        language = context.GetProtocol5HtmlLanguage(),
        sampleCanonicalId
    });
});

app.Run();

Рекомендація для HTML

Якщо сторінка має безпосередньо оголошувати UAI-сумісний контент, використовуйте:

<html lang="x-uai-1">

Правило канонічного форматування

Під час серіалізації канонічних значень UAI завжди використовуйте InvariantCulture:

using Protocol5.UAI;

var confidence = 0.875m.ToString(UaiCultureInfo.CanonicalSerializationCulture);

Приклади Radix 63404, що входять до комплекту

Radix63404.Encode(41);        // J
Radix63404.Encode(5651);      // ᙖ
Radix63404.Encode(267914296); // Ⴤ绠

Посилання для завантаження