AML ASN 1 Markup Language A markup notation

  • Slides: 19
Download presentation
AML ASN. 1 Markup Language A markup notation for ASN. 1 values Copyright ©

AML ASN. 1 Markup Language A markup notation for ASN. 1 values Copyright © 2001 Griffin Consulting, All Rights Reserved. Griffin Consulting 1625 Glenwood Avenue Raleigh, North Carolina 27608 -2319 +1 -919 -832 -7008 phil. griffin@asn-1. com

ASN. 1 Markup Values Overview (a) • ASN. 1 is a schema for encoded

ASN. 1 Markup Values Overview (a) • ASN. 1 is a schema for encoded values - Type definitions are based on the X. 680 -series notation - Types describe the expected general structure of values - Each builtin type defines a class of distinct values - Constraints restrict a class and the validity of values Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Overview (b) • Encoded ASN. 1 values are binary or

ASN. 1 Markup Values Overview (b) • Encoded ASN. 1 values are binary or text - Binary encodings based on the X. 690 -series rules - Text encoded as plain, formatted or markup values - ASN. 1 Value Notation - ASN. 1 Markup Language (AML) - Coloring control of markup Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Example type and value Any. Name : : = [APPLICATION

ASN. 1 Markup Values Example type and value Any. Name : : = [APPLICATION 1] SEQUENCE { given. Name Visible. String, initial [0] Visible. String (SIZE(1)) family. Name Visible. String } <Any. Name> <given. Name> Hubert </given. Name> <initial> L </initial> <family. Name> Owen </family. Name> </Any. Name> Copyright © 2001 Griffin Consulting, All Rights Reserved. OPTIONAL,

ASN. 1 Markup Values Another example Child. Information : : = SET { name

ASN. 1 Markup Values Another example Child. Information : : = SET { name Any. Name, date. Of. Birth Date } Date : : = [APPLICATION 3] INTEGER (1. . MAX) -- yyyymmdd <Child. Information> <name> <given. Name> Lee </given. Name> <family. Name> Owen </family. Name> </name> <date. Of. Birth> 19501003 </date. Of. Birth> </Child. Information> Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values As a rule. . . Whenever possible, the identifier name

ASN. 1 Markup Values As a rule. . . Whenever possible, the identifier name is used as the default markup tag. Otherwise, the user defined type name is used. Employee : : = SEQUENCE { number INTEGER(0. . MAX), date. Of. Hire Date } -- type -- identifier <Employee> <number> 51 </number> <date. Of. Hire> 19710917 </date. Of. Hire> </Employee> Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values AML Benefits (a) • A single schema for all values

ASN. 1 Markup Values AML Benefits (a) • A single schema for all values - Binary and text encodings are all based on ASN. 1 types * Eliminates multiple schema mappings * ASN. 1 is a mature, stable schema for XML markup • ASN. 1 <=> XML communications - ASN. 1 applications can send and receive XML values - Efficient ASN. 1 transfer, Encoding Control, plain text Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values AML Benefits (b) XML HTML plus ASN. 1/ML Browser Application

ASN. 1 Markup Values AML Benefits (b) XML HTML plus ASN. 1/ML Browser Application Plain Text Application Compact Binary Encoding ECN Copyright © 2001 Griffin Consulting, All Rights Reserved. Wireless Application SDF Application

ASN. 1 Markup Values Personnel Record (a) Personnel. Record : : = [APPLICATION 0]

ASN. 1 Markup Values Personnel Record (a) Personnel. Record : : = [APPLICATION 0] SET{ name Any. Name, title number date. Of. Hire name. Of. Spouse children Visible. String, Employee. Number, Date, Any. Name, SEQUENCE OF Child. Information DEFAULT {} } Note: Child. Information is a “defined type”. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Personnel Record (b) { name title number date. Of. Hire

ASN. 1 Markup Values Personnel Record (b) { name title number date. Of. Hire name. Of. Spouse children { { name date. Of. Birth } { given. Name ”Hubert”, initial "L”, family. Name "Owen” }, "Director”, 51, 19710917, { given. Name ”Ann”, initial "R”, family. Name ”Mitchell” }, { given. Name "Lee”, family. Name ”Owen” } , 19501003 }, { given. Name "Alan”, initial "L”, family. Name ”Owen” } , 19590925 } } Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Personnel Record (c) <Personnel. Record> <name> <given. Name> Hubert </given.

ASN. 1 Markup Values Personnel Record (c) <Personnel. Record> <name> <given. Name> Hubert </given. Name> <initial> L </initial> <family. Name> Owen </family. Name> </name> <title> Director </title> <number> 51 </number> <date. Of. Hire> 19710917 </date. Of. Hire> Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Personnel Record (d) <name. Of. Spouse> <given. Name> Ann </given.

ASN. 1 Markup Values Personnel Record (d) <name. Of. Spouse> <given. Name> Ann </given. Name> <initial> R </initial> <family. Name> Mitchell </family. Name> </name. Of. Spouse> <children> <Child. Information> <name> <given. Name> Lee </given. Name> <family. Name> Owen </family. Name> </name> Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Personnel Record (e) <date. Of. Birth> 19501003 </date. Of. Birth>

ASN. 1 Markup Values Personnel Record (e) <date. Of. Birth> 19501003 </date. Of. Birth> </Child. Information> <name> <given. Name> Alan </given. Name> <initial> L </initial> <family. Name> Owen </family. Name> </name> <date. Of. Birth> 19590925 </date. Of. Birth> Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Personnel Record (f) </Child. Information> </children> </Personnel. Record> Note: A

ASN. 1 Markup Values Personnel Record (f) </Child. Information> </children> </Personnel. Record> Note: A detailed description of this personnel record example is provided in Annex C of ITU-T Rec. X. 680 | ISO/IEC 8824 -1. The type and value notation used in this example mimics the one in the ASN. 1 standard. The ASN. 1 Markup Value Notation is the result of new work from the Geneva 2001 ASN. 1 Editors Group meeting. Future work will focus on coloring. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Coloring A coloring notation is currently being designed and will

ASN. 1 Markup Values Coloring A coloring notation is currently being designed and will be added to the ASN. 1 standards. The form of this new notation is still being decided, but will likely mimic the new ASN. 1 Encoding Control Notation (ECN). See http: //www. oss. com/newsletter/newsletterfeb 01. html But much of the functionality that will be provided by AML coloring can be expressed for the purpose of discussion using ASN. 1 tool directives in the form of ASN. 1 comments. The following slides describe several proposed coloring controls. Each includes a description, an example, and the expected results of coloring. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Coloring (tag=) The tag= coloring control allows the protocol specifier

ASN. 1 Markup Values Coloring (tag=) The tag= coloring control allows the protocol specifier to choose the name used in any generated markup tags. AReal : : = REAL --<AML tag=‘my. Number’>-- For the value 1. 5, this type definition and coloring control will generate <my. Number> 1. 5 </my. Number> instead of the default markup <AReal> 1. 5 </AReal> Note: If tag= is present and empty, no markup tags are generated. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Coloring (prefix=) The prefix= coloring control specifies a text string

ASN. 1 Markup Values Coloring (prefix=) The prefix= coloring control specifies a text string to precede the generated value or markup value. AReal : : = REAL --<AML tag=‘’>---<AML prefix=‘<font size=2 color="#FF 0000">’>-- For the value 1. 5, this type definition and coloring control will generate <font size=2 color="#FF 0000"> 1. 5 instead of the default markup <AReal> 1. 5 </AReal> Note: The prefix= string precedes any generated markup start tag. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Coloring (suffix=) The suffix= coloring control specifies a text string

ASN. 1 Markup Values Coloring (suffix=) The suffix= coloring control specifies a text string to follow the generated value or markup value. AReal : : = REAL --<AML tag=‘b’ suffix=‘</i>? ’>-- For the value 1. 5, this type definition and coloring control will generate <b> 1. 5 </b></i>? instead of the default markup <AReal> 1. 5 </AReal> Note: The suffix= string follows any generated markup end tag. Copyright © 2001 Griffin Consulting, All Rights Reserved.

ASN. 1 Markup Values Coloring (dtd. File=) The dtd. File= coloring control specifies the

ASN. 1 Markup Values Coloring (dtd. File=) The dtd. File= coloring control specifies the name of a DTD file to be used with the generated markup for a given ASN. 1 module. Certificate. Extensions DEFINITIONS IMPLICIT TAGS --<AML dtd. File=‘C: My. Module. dtd’ >-- : : = BEGIN Applications may require more than one DTD file, perhaps one per PDU. AReal : : = REAL --<AML dtd. File=‘C: My. PDU. dtd’ >-- When a dtd. FIle= control is used to color a PDU, it replaces any DTD control specified at the module level for the given PDU. Copyright © 2001 Griffin Consulting, All Rights Reserved.