|
| |
Пример применения АСН.1
Рассмотрим применение АСН.1 на примере
некоторой записи учета кадров. Ниже приведена
структура записи учета кадров и ее значение для
конкретного служащего.
| Имя: |
Петр Борисович Иванов |
| Должность: |
Директор |
| Учетный номер: |
23 |
| Дата приема на работу: |
14 июня 1997 г. |
| Имя жены: |
Ольга Олеговна Иванова |
| Число детей: |
2 |
| |
|
| Информация о ребенке: |
|
| Имя: |
Олег Петрович Иванов |
| Дата рождения: |
16 марта 1990 г. |
| |
|
| Информация о ребенке: |
|
| Имя: |
Анна Петровна Иванова |
| Дата рождения: |
5 декабря 1993 г. |
Структура каждой записи учета кадров
формально описана ниже с помощью стандартных
обозначений для типов данных.
PersonnelRecord::= [APPLCATION 0] IMPLICIT SET
{ |
Name, |
title |
[0] VisibleString , |
number |
EmployeeNumber, |
dateOfHire |
[1] Date, |
NameOfWife |
[2] Name, |
children |
[3] IMPLICIT SEQUENCE OF ChildInformation DEFAULT {} } |
ChildInformation::=SET |
|
{ |
Name, |
dateOfBirth |
[0] Date} |
Name::= [APPLICATION 1] IMPLICIT SEQUENCE
{givenName |
VisibleString |
inital |
VisibleString |
familyName |
VisibleString} |
EmployeeNumber::= [APPLICATION 2] IMPLICIT integer
Date::= [APPLICATION 3] IMPLICIT VisibleString –YYYYMMDD
Далее приводится значение записи
учета кадров для Иванова Петра Борисовича,
определенное с помощью нотации АСН.1.
{ |
{givenName “Peter“, initial
“Borisovich“, familyName “Ivanov“}, |
title |
“Director“, |
number |
23, |
dateOfHire |
19970614 |
NameOfWife |
{givenName “Olga“, initial
“Olegovna“, familyName “Ivanova“}, |
children |
|
{{{ givenName “Oleg“, initial “ Petrovich“, familyName
“Ivanov“},
dateOfBirth “19900316“},
{{ givenName “Anna“, initial “ Petrovna “, familyName
“Ivanova“},
dateOfBirth “19931205“}}}
Ниже приводится представление в
октетах приведенного выше значения записи.
Значения идентификаторов, длин и целочисленные
величины приведены в шестнадцатеричной записи,
по две шестнадцатеричные цифры на октет.
Значения содержимого знаковых строк показаны в
виде текста, по одному знаку на октет.
Personnel
Record |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
60 |
83 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
1B |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
05 |
“Peter“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
0A |
“Borisovich“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
06 |
“Ivanov“ |
|
|
|
|
|
|
title |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Director“ |
|
|
|
|
|
|
number |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
42 |
01 |
17 |
|
|
|
|
|
|
|
|
dateOfHire |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A1 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19970614“ |
|
|
|
|
|
|
NameOfWife |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A2 |
13 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Olga“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Olegovna“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
07 |
“Ivanova“ |
|
|
|
|
|
|
[3] |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A3 |
52 |
|
|
|
|
|
|
|
|
|
|
|
Set |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
31 |
27 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
19 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Oleg “ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
09 |
“Petrovich“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
06 |
“Ivanov“ |
|
|
|
|
|
|
DateOfBirth |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19900316“ |
|
|
|
|
Set |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
31 |
27 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
19 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Anna “ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Petrovna“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
07 |
“Ivanova“ |
|
|
|
|
|
|
DateOfBirth |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19931205“ |
Иерархия тегов для данной записи
приведена на рис.5 .
Пример применения АСН.1
Рассмотрим применение АСН.1 на примере
некоторой записи учета кадров. Ниже приведена
структура записи учета кадров и ее значение для
конкретного служащего.
| Имя: |
Петр Борисович Иванов |
| Должность: |
Директор |
| Учетный номер: |
23 |
| Дата приема на работу: |
14 июня 1997 г. |
| Имя жены: |
Ольга Олеговна Иванова |
| Число детей: |
2 |
| |
|
| Информация о ребенке: |
|
| Имя: |
Олег Петрович Иванов |
| Дата рождения: |
16 марта 1990 г. |
| |
|
| Информация о ребенке: |
|
| Имя: |
Анна Петровна Иванова |
| Дата рождения: |
5 декабря 1993 г. |
Структура каждой записи учета кадров
формально описана ниже с помощью стандартных
обозначений для типов данных.
PersonnelRecord::= [APPLCATION 0] IMPLICIT SET
{ |
Name, |
title |
[0] VisibleString , |
number |
EmployeeNumber, |
dateOfHire |
[1] Date, |
NameOfWife |
[2] Name, |
children |
[3] IMPLICIT SEQUENCE OF ChildInformation DEFAULT {} } |
ChildInformation::=SET |
|
{ |
Name, |
dateOfBirth |
[0] Date} |
Name::= [APPLICATION 1] IMPLICIT SEQUENCE
{givenName |
VisibleString |
inital |
VisibleString |
familyName |
VisibleString} |
EmployeeNumber::= [APPLICATION 2] IMPLICIT integer
Date::= [APPLICATION 3] IMPLICIT VisibleString –YYYYMMDD
Далее приводится значение записи
учета кадров для Иванова Петра Борисовича,
определенное с помощью нотации АСН.1.
{ |
{givenName “Peter“, initial
“Borisovich“, familyName “Ivanov“}, |
title |
“Director“, |
number |
23, |
dateOfHire |
19970614 |
NameOfWife |
{givenName “Olga“, initial
“Olegovna“, familyName “Ivanova“}, |
children |
|
{{{ givenName “Oleg“, initial “ Petrovich“, familyName
“Ivanov“},
dateOfBirth “19900316“},
{{ givenName “Anna“, initial “ Petrovna “, familyName
“Ivanova“},
dateOfBirth “19931205“}}}
Ниже приводится представление в
октетах приведенного выше значения записи.
Значения идентификаторов, длин и целочисленные
величины приведены в шестнадцатеричной записи,
по две шестнадцатеричные цифры на октет.
Значения содержимого знаковых строк показаны в
виде текста, по одному знаку на октет.
Personnel
Record |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
60 |
83 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
1B |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
05 |
“Peter“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
0A |
“Borisovich“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
06 |
“Ivanov“ |
|
|
|
|
|
|
title |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Director“ |
|
|
|
|
|
|
number |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
42 |
01 |
17 |
|
|
|
|
|
|
|
|
dateOfHire |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A1 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19970614“ |
|
|
|
|
|
|
NameOfWife |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A2 |
13 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Olga“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Olegovna“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
07 |
“Ivanova“ |
|
|
|
|
|
|
[3] |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A3 |
52 |
|
|
|
|
|
|
|
|
|
|
|
Set |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
31 |
27 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
19 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Oleg “ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
09 |
“Petrovich“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
06 |
“Ivanov“ |
|
|
|
|
|
|
DateOfBirth |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19900316“ |
|
|
|
|
Set |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
31 |
27 |
|
|
|
|
|
|
|
|
|
|
|
Name |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
61 |
19 |
|
|
|
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
04 |
“Anna “ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
08 |
“Petrovna“ |
|
|
|
|
|
|
|
|
VisibleString |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
1A |
07 |
“Ivanova“ |
|
|
|
|
|
|
DateOfBirth |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
A0 |
0A |
|
|
|
|
|
|
|
|
|
|
|
Date |
Длина |
Содержимое |
|
|
|
|
|
|
|
|
43 |
08 |
“19931205“ |
Иерархия тегов для данной записи
приведена на рис.5 .

|