From ac3598008390c5185f6b71feffe31cb7fa61b9a7 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Wed, 12 Apr 2017 12:13:44 +0200 Subject: initial chekin of code received by Ericsson on 20170410 --- COMMON/src/General_Types.ttcn | 382 +++++++++++++++++++++ COMMON/src/MobileDomainDefinitions.asn | 54 +++ COMMON/src/ProtocolModules_Common.grp | 39 +++ COMMON/src/UsefulTtcn3Types.ttcn | 99 ++++++ COMMON/src/XSD.ttcn | 339 ++++++++++++++++++ COMMON/src/general_typedefs.ttcn | 236 +++++++++++++ COMMON/src/http_www_w3_org_XML_1998_namespace.ttcn | 150 ++++++++ 7 files changed, 1299 insertions(+) create mode 100644 COMMON/src/General_Types.ttcn create mode 100644 COMMON/src/MobileDomainDefinitions.asn create mode 100644 COMMON/src/ProtocolModules_Common.grp create mode 100644 COMMON/src/UsefulTtcn3Types.ttcn create mode 100644 COMMON/src/XSD.ttcn create mode 100644 COMMON/src/general_typedefs.ttcn create mode 100644 COMMON/src/http_www_w3_org_XML_1998_namespace.ttcn (limited to 'COMMON/src') diff --git a/COMMON/src/General_Types.ttcn b/COMMON/src/General_Types.ttcn new file mode 100644 index 00000000..bd2dc54e --- /dev/null +++ b/COMMON/src/General_Types.ttcn @@ -0,0 +1,382 @@ +/****************************************************************************** +* Copyright (c) 2004, 2014 Ericsson AB +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/epl-v10.html +* +* Contributors: +* Zoltan Jasz - initial implementation and initial documentation +* Abhishek Gupta +* Attila Balasko +* Endre Kulcsar +* Gabor Bettesch +* Gabor Szalai +* Janos Kovesdi +* Sandor Palugyai +* Tibor Csondes +******************************************************************************/ +// +// File: General_Types.ttcn +// Rev: R9A +// Prodnr: CNL 113 368 +// Reference: + +module General_Types +{ + +group SimpleNativeTypes { + + //**************************************************** + // Bitstrings + //**************************************************** + + //bitstring with fixed length + type bitstring BIT1n length(1) with { variant "" }; + type bitstring BIT2n length(2) with { variant "" }; + type bitstring BIT3n length(3) with { variant "" }; + type bitstring BIT4n length(4) with { variant "" }; + type bitstring BIT5n length(5) with { variant "" }; + type bitstring BIT6n length(6) with { variant "" }; + type bitstring BIT7n length(7) with { variant "" }; + type bitstring BIT8n length(8) with { variant "" }; + type bitstring BIT9n length(9) with { variant "" }; + type bitstring BIT12n length(12) with { variant "" }; + type bitstring BIT14n length(14) with { variant "" }; + type bitstring BIT15n length(15) with { variant "" }; + type bitstring BIT16n length(16) with { variant "" }; + type bitstring BIT56n length(56) with { variant "" }; + + //bitstring with length interval + type bitstring BIT14_24n length(14..24) with { variant "" }; + + //bitstring to be padded with fixed length + type bitstring BIT1np length(1) with { variant "" }; + type bitstring BIT2np length(2) with { variant "" }; + type bitstring BIT3np length(3) with { variant "" }; + type bitstring BIT4np length(4) with { variant "" }; + type bitstring BIT5np length(5) with { variant "" }; + type bitstring BIT6np length(6) with { variant "" }; + type bitstring BIT7np length(7) with { variant "" }; + type bitstring BIT15np length(15) with { variant "" }; + + //bitstring with fixed length + type bitstring BIT1 length(1) with { variant "FIELDLENGTH(1)" }; + type bitstring BIT2 length(2) with { variant "FIELDLENGTH(2)" }; + type bitstring BIT3 length(3) with { variant "FIELDLENGTH(3)" }; + type bitstring BIT4 length(4) with { variant "FIELDLENGTH(4)" }; + type bitstring BIT5 length(5) with { variant "FIELDLENGTH(5)" }; + type bitstring BIT6 length(6) with { variant "FIELDLENGTH(6)" }; + type bitstring BIT7 length(7) with { variant "FIELDLENGTH(7)" }; + type bitstring BIT8 length(8) with { variant "FIELDLENGTH(8)" }; + type bitstring BIT9 length(9) with { variant "FIELDLENGTH(9)" }; + type bitstring BIT10 length(10) with { variant "FIELDLENGTH(10)" }; + type bitstring BIT11 length(11) with { variant "FIELDLENGTH(11)" }; + type bitstring BIT12 length(12) with { variant "FIELDLENGTH(12)" }; + type bitstring BIT14 length(14) with { variant "FIELDLENGTH(14)" }; + type bitstring BIT15 length(15) with { variant "FIELDLENGTH(15)" }; + type bitstring BIT16 length(16) with { variant "FIELDLENGTH(16)" }; + type bitstring BIT24 length(24) with { variant "FIELDLENGTH(24)" }; + type bitstring BIT31 length(31) with { variant "FIELDLENGTH(31)" }; + type bitstring BIT56 length(56) with { variant "FIELDLENGTH(56)" }; + + type record of bitstring Bitstrings with { variant "" }; + type Bitstrings BitstringList; + type set of bitstring BitstringSet with { variant "" }; + + //**************************************************** + // Octetstrings + //**************************************************** + + //octetstring with fixed length + type octetstring OCT0n length(0) with { variant "" }; + type octetstring OCT1n length(1) with { variant "" }; + type octetstring OCT2n length(2) with { variant "" }; + type octetstring OCT3n length(3) with { variant "" }; + type octetstring OCT4n length(4) with { variant "" }; + type octetstring OCT5n length(5) with { variant "" }; + type octetstring OCT6n length(6) with { variant "" }; + type octetstring OCT7n length(7) with { variant "" }; + type octetstring OCT8n length(8) with { variant "" }; + type octetstring OCT9n length(9) with { variant "" }; + type octetstring OCT10n length(10) with { variant "" }; + type octetstring OCT11n length(11) with { variant "" }; + type octetstring OCT12n length(12) with { variant "" }; + type octetstring OCT13n length(13) with { variant "" }; + type octetstring OCT14n length(14) with { variant "" }; + type octetstring OCT15n length(15) with { variant "" }; + type octetstring OCT16n length(16) with { variant "" }; + type octetstring OCT17n length(17) with { variant "" }; + type octetstring OCT18n length(18) with { variant "" }; + type octetstring OCT19n length(19) with { variant "" }; + type octetstring OCT20n length(20) with { variant "" }; + type octetstring OCT28n length(28) with { variant "" }; + type octetstring OCT32n length(32) with { variant "" }; + type octetstring OCT34n length(34) with { variant "" }; + type octetstring OCT46n length(46) with { variant "" }; + type octetstring OCT50n length(50) with { variant "" }; + type octetstring OCT69n length(69) with { variant "" }; + type octetstring OCT100n length(100) with { variant "" }; + type octetstring OCT128n length(128) with { variant "" }; + type octetstring OCT500n length(500) with { variant "" }; + type octetstring OCTNn with { variant "" }; + + //octetstring with length interval + type octetstring OCT1_3n length(1..3) with { variant "" }; + type octetstring OCT1_4n length(1..4) with { variant "" }; + type octetstring OCT1_5n length(1..5) with { variant "" }; + type octetstring OCT1_6n length(1..6) with { variant "" }; + type octetstring OCT1_7n length(1..7) with { variant "" }; + type octetstring OCT1_8n length(1..8) with { variant "" }; + type octetstring OCT1_12n length(1..12) with { variant "" }; + type octetstring OCT1_15n length(1..15) with { variant "" }; + type octetstring OCT1_16n length(1..16) with { variant "" }; + type octetstring OCT1_18n length(1..18) with { variant "" }; + type octetstring OCT1_20n length(1..20) with { variant "" }; + type octetstring OCT1_24n length(1..24) with { variant "" }; + type octetstring OCT1_32n length(1..32) with { variant "" }; + type octetstring OCT1_34n length(1..34) with { variant "" }; + type octetstring OCT1_46n length(1..46) with { variant "" }; + type octetstring OCT1_50n length(1..50) with { variant "" }; + type octetstring OCT1_112n length(1..112) with { variant "" }; + type octetstring OCT1_127n length(1..127) with { variant "" }; + type octetstring OCT1_128n length(1..128) with { variant "" }; + type octetstring OCT1_172n length(1..172) with { variant "" }; + type octetstring OCT3_5n length(3..5) with { variant "" }; + type octetstring OCT3_7n length(3..7) with { variant "" }; + type octetstring OCT3_8n length(3..8) with { variant "" }; + type octetstring OCT3_14n length(3..14) with { variant "" }; + type octetstring OCT3_17n length(3..17) with { variant "" }; + type octetstring OCT4_8n length(4..8) with { variant "" }; + + type record of octetstring Octetstrings with { variant "" }; + type Octetstrings OctetstringList; + type set of octetstring OctetstringSet with { variant "" }; + + //**************************************************** + // Charstrings + //**************************************************** + + //charstring with fixed length + type charstring CHAR4 length (4); + + type record of charstring Charstrings with { variant "" }; + type Charstrings CharstringList; + type set of charstring CharstringSet with { variant "" }; + + //**************************************************** + // Hexstrings + //**************************************************** + + //hexstring with fixed length + type hexstring HEX4n length(4) with { variant "" }; + type hexstring HEX6n length(6) with { variant "" }; + type hexstring HEX8n length(8) with { variant "" }; + type hexstring HEX15n length(15) with { variant "" }; + type hexstring HEX16n length(16) with { variant "" }; + type hexstring HEX24n length(24) with { variant "" }; + + //hexstring with length interval + type hexstring HEX0_18n length(0..18) with { variant "" }; + type hexstring HEX1_20n length(1..20) with { variant "" }; + type hexstring HEX1_34n length(1..34) with { variant "" }; + + type record of hexstring Hexstrings with { variant "" }; + type Hexstrings HexstringList; + type set of hexstring HexstringSet with { variant "" }; + + //**************************************************** + // Integers + //**************************************************** + + //integer with fixed bit number + type integer INT3nb (0..7) with { variant "" }; + type integer INT4nb (0..15) with { variant "" }; + type integer INT5nb (0..31) with { variant "" }; + type integer INT8nb (0..255) with { variant "" }; + + //integer with fixed bit number and with padding + type integer INT2nbp (0..3) with { variant "" }; + type integer INT1nbp (0..1) with { variant "" }; + type integer INT3nbp (0..7) with { variant "" }; + type integer INT5nbp (0..31) with { variant "" }; + type integer INT9nbp (0..511) with { variant "" }; + type integer INT13nbp (0..8191) with { variant "" }; + type integer INT15nbp (0..32767) with { variant "" }; + + //**************************************************** + // Structures + //**************************************************** + + //integer record + type record of integer Integers with { variant "" }; + type Integers IntegerList; + type record of Integers Integer_array with { variant "" }; + type set of integer IntegerSet with { variant "" }; + + //**************************************************** + // Floats + //**************************************************** + + type record of float Floats with { variant "" }; + type Floats FloatList; + type set of float FloatSet with { variant "" }; + + //**************************************************** + // Universal Charstrings + //**************************************************** + + type record of universal charstring UniversalCharstrings with { variant "" }; + type UniversalCharstrings UniversalCharstringList; + type set of universal charstring UniversalCharstringSet with { variant "" }; + + //**************************************************** + // Booleans + //**************************************************** + + type record of boolean Booleans with { variant "" }; + type Booleans BooleanList; + type set of boolean BooleanSet with { variant "" }; + + //**************************************************** + // Verdicttypes + //**************************************************** + + type record of verdicttype Verdicttypes with { variant "" }; + type Verdicttypes VerdicttypeList; + type set of verdicttype VerdicttypeSet with { variant "" }; + + //**************************************************** + // Anytypes + //**************************************************** + + type record of anytype Anytypes with { variant "" }; + type Anytypes AnytypeList; + type set of anytype AnytypeSet with { variant "" }; + +} // end group NativeTypes + +//**************************************************** +//**************************************************** +// RAW Encoded Types +//**************************************************** +//**************************************************** + +group SimpleRAWEncodedTypes { + + //**************************************************** + // Bitstrings + //**************************************************** + + //bitstring with fixed length + type bitstring BIT6_BO_LAST length (6) with {variant "BYTEORDER(last)"}; + type bitstring BIT16_BO_LAST length (16) with {variant "BYTEORDER(last)"}; + type bitstring BIT32_BO_LAST length (32) with {variant "BYTEORDER(last)"}; + + //**************************************************** + // Octetstrings + //**************************************************** + //octetstring with fixed length + type octetstring Dummy length(0) with { variant "FIELDLENGTH(0)" }; + type octetstring OCT0 length(0) with { variant "FIELDLENGTH(0)" }; + type octetstring OCT1 length(1) with { variant "FIELDLENGTH(1)" }; + type octetstring OCT2 length(2) with { variant "FIELDLENGTH(2)" }; + type octetstring OCT3 length(3) with { variant "FIELDLENGTH(3)" }; + type octetstring OCT4 length(4) with { variant "FIELDLENGTH(4)" }; + type octetstring OCT5 length(5) with { variant "FIELDLENGTH(5)" }; + type octetstring OCT6 length(6) with { variant "FIELDLENGTH(6)" }; + type octetstring OCT7 length(7) with { variant "FIELDLENGTH(7)" }; + type octetstring OCT8 length(8) with { variant "FIELDLENGTH(8)" }; + type octetstring OCT9 length(9) with { variant "FIELDLENGTH(9)" }; + type octetstring OCT10 length(10) with { variant "FIELDLENGTH(10)" }; + type octetstring OCT11 length(11) with { variant "FIELDLENGTH(11)" }; + type octetstring OCT12 length(12) with { variant "FIELDLENGTH(12)" }; + type octetstring OCT13 length(13) with { variant "FIELDLENGTH(13)" }; + type octetstring OCT14 length(14) with { variant "FIELDLENGTH(14)" }; + type octetstring OCT15 length(15) with { variant "FIELDLENGTH(15)" }; + type octetstring OCT16 length(16) with { variant "FIELDLENGTH(16)" }; + type octetstring OCT17 length(17) with { variant "FIELDLENGTH(17)" }; + type octetstring OCT18 length(18) with { variant "FIELDLENGTH(18)" }; + type octetstring OCT19 length(19) with { variant "FIELDLENGTH(19)" }; + type octetstring OCT20 length(20) with { variant "FIELDLENGTH(20)" }; + type octetstring OCT32 length(32) with { variant "FIELDLENGTH(32)" }; + type octetstring OCT34 length(34) with { variant "FIELDLENGTH(34)" }; + type octetstring OCT46 length(46) with { variant "FIELDLENGTH(46)" }; + + //octetstring with length interval + type octetstring OCT1_260 length(1..260) with { variant "" }; + type octetstring OCT1_8 length(1..8) with { variant "" }; + type octetstring OCT1_12 length(1..12) with { variant "" }; + type octetstring OCT1_32 length(1..32) with { variant "" }; + type octetstring OCT1_50 length(1..50) with { variant "" }; + type octetstring OCT3_8 length(3..8) with { variant "" }; + + type octetstring OCTN with { variant "" }; + + //**************************************************** + // Hexstrings + //**************************************************** + + //hexstring with fixed length + type hexstring HEX1 length(1) with {variant "FIELDLENGTH(1)"}; + + //hexstring with length interval + type hexstring HEX0_16 length(0..16) with { variant "" }; + type hexstring HEX5_16 length(5..16) with { variant "" }; + type hexstring HEX1_32 length(1..32) with { variant "" }; + + + //**************************************************** + // Integers + //**************************************************** + + //integer with fixed octet number + type integer INT1 (0..255) with { variant "FIELDLENGTH(8)" }; + type integer LIN1 (0..255) with { variant "FIELDLENGTH(8)" }; + type integer LIN2 (0..65535) with { variant "FIELDLENGTH(16)" }; + type integer LIN2_BO_LAST (0..65535) with { variant "FIELDLENGTH(16), COMP(nosign), BYTEORDER(last)" }; + type integer LIN3_BO_LAST (0..16777215) with { variant "FIELDLENGTH(24), COMP(nosign), BYTEORDER(last)" }; + type integer LIN4_BO_LAST (0..4294967295) with { variant "FIELDLENGTH(32), COMP(nosign), BYTEORDER(last)" }; + + //integer with fixed bit number + type integer INT1b (0..1) with { variant "FIELDLENGTH(1)" }; + type integer INT2b (0..3) with { variant "FIELDLENGTH(2)" }; + type integer INT3b (0..7) with { variant "FIELDLENGTH(3)" }; + type integer INT4b (0..15) with { variant "FIELDLENGTH(4)" }; + type integer INT5b (0..31) with { variant "FIELDLENGTH(5)" }; + type integer INT6b (0..63) with { variant "FIELDLENGTH(6)" }; + type integer INT7b (0..127) with { variant "FIELDLENGTH(7)" }; + type integer INT11b_BO_LAST ( 0 .. 2047 ) with { variant "FIELDLENGTH(11), COMP(nosign), BYTEORDER(last)" }; + type integer INT12b_BO_LAST ( 0 .. 4095 ) with { variant "FIELDLENGTH(12), COMP(nosign), BYTEORDER(last)" }; + type integer INT13b_BO_LAST ( 0 .. 8191 ) with { variant "FIELDLENGTH(13), COMP(nosign), BYTEORDER(last)" }; + type integer INT14b_BO_LAST ( 0 .. 16383 ) with { variant "FIELDLENGTH(14), COMP(nosign), BYTEORDER(last)" }; + type integer INT18b_BO_LAST ( 0 .. 262143 ) with { variant "FIELDLENGTH(18), COMP(nosign), BYTEORDER(last)" }; + type integer INT20b_BO_LAST ( 0 .. 1048575 ) with { variant "FIELDLENGTH(20), COMP(nosign), BYTEORDER(last)" }; + type integer INT31b_BO_LAST ( 0 .. 2147483647 ) with { variant "FIELDLENGTH(31), COMP(nosign), BYTEORDER(last)" }; + +} // end group SimpleRAWEncodedTypes + +group ComponentTypes { + type component Dummy_comptype {} + type component Dummy_CT {} +} // end group ComponentTypes + +group CompositeTypes { + type enumerated Protocols + { mtp3, sccp, isup, bicc, qaal2, gcp, bssap, bssmap, ranap, dtap } + + type record of OCT1 OCT1List with { variant "" }; + type record of OCT2 OCT2List with { variant "" }; + type record of OCT3 OCT3List with { variant "" }; + type record of OCT4 OCT4List with { variant "" }; + type record of OCT5 OCT5List with { variant "" }; + type record of OCT6 OCT6List with { variant "" }; + type record of OCT7 OCT7List with { variant "" }; + + type record of Dummy_comptype ListOfDummy_comptype with { variant "" }; + type record of Dummy_CT ListOfDummy_CT with { variant "" }; + type record of Protocols ProtocolList with { variant "" }; +} // end group CompositeTypes + +} with { encode "RAW" } /* End of module General_Types */ + diff --git a/COMMON/src/MobileDomainDefinitions.asn b/COMMON/src/MobileDomainDefinitions.asn new file mode 100644 index 00000000..0685484c --- /dev/null +++ b/COMMON/src/MobileDomainDefinitions.asn @@ -0,0 +1,54 @@ +-- ******************************************************************************* +-- * Copyright (c) 2004, 2014 Ericsson AB +-- * All rights reserved. This program and the accompanying materials +-- * are made available under the terms of the Eclipse Public License v1.0 +-- * which accompanies this distribution, and is available at +-- * http://www.eclipse.org/legal/epl-v10.html +-- * +-- * Contributors: +-- * Zoltan Jasz - initial implementation and initial documentation +-- * Abhishek Gupta +-- * Attila Balasko +-- * Endre Kulcsar +-- * Gabor Bettesch +-- * Gabor Szalai +-- * Janos Kovesdi +-- * Sandor Palugyai +-- * Tibor Csondes +-- ******************************************************************************* +-- +-- File: MobileDomainDefinitions.asn +-- Rev: R9A +-- Prodnr: CNL 113 368 +-- Reference: + +MobileDomainDefinitions {ccitt (0) identified-organization (4) etsi (0) + mobileDomain (0) mobileDomainDefinitions (0) version1 (1)} + +DEFINITIONS ::= +BEGIN + +IMPORTS ; + +-- Mobile DomainId + +mobileDomainId OBJECT IDENTIFIER ::= {ccitt (0) identified-organization (4) etsi (0) mobileDomain (0)} + +-- Mobile Subdomains + +gsm-NetworkId OBJECT IDENTIFIER ::= {mobileDomainId gsm-Network (1)} +gsm-AccessId OBJECT IDENTIFIER ::= {mobileDomainId gsm-Access (2)} +gsm-OperationAndMaintenanceId OBJECT IDENTIFIER ::= {mobileDomainId gsm-Operation-Maintenance (3)} +gsm-MessagingId OBJECT IDENTIFIER ::= {mobileDomainId gsm-Messaging (4)} + +-- Common Component Ids for structuring Mobile Subdomains + +CommonComponentId ::= INTEGER (0..9) + +ac-Id CommonComponentId ::= 0 +as-Id CommonComponentId ::= 1 +ase-Id CommonComponentId ::= 2 +moduleId CommonComponentId ::= 3 +er-Id CommonComponentId ::= 4 + +END -- MobileDomainDefinitions diff --git a/COMMON/src/ProtocolModules_Common.grp b/COMMON/src/ProtocolModules_Common.grp new file mode 100644 index 00000000..90214d52 --- /dev/null +++ b/COMMON/src/ProtocolModules_Common.grp @@ -0,0 +1,39 @@ + + + + + + + + + + + + diff --git a/COMMON/src/UsefulTtcn3Types.ttcn b/COMMON/src/UsefulTtcn3Types.ttcn new file mode 100644 index 00000000..911e1a5a --- /dev/null +++ b/COMMON/src/UsefulTtcn3Types.ttcn @@ -0,0 +1,99 @@ +/****************************************************************************** +* Copyright (c) 2004, 2014 Ericsson AB +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/epl-v10.html +* +* Contributors: +* Zoltan Jasz - initial implementation and initial documentation +* Abhishek Gupta +* Attila Balasko +* Endre Kulcsar +* Gabor Bettesch +* Gabor Szalai +* Janos Kovesdi +* Sandor Palugyai +* Tibor Csondes +******************************************************************************/ +// +// File: UsefulTtcn3Types.ttcn +// Rev: R9A +// Prodnr: CNL 113 368 +// +//////////////////////////////////////////////////////////////////////////////// +module UsefulTtcn3Types { + + + type integer byte (-128 .. 127) with { variant "/* 8 bit */" }; + + type integer unsignedbyte (0 .. 255) with { variant "/*unsigned 8 bit*/" }; + + type integer short (-32768 .. 32767) with { variant "/*16 bit*/" }; + + type integer unsignedshort (0 .. 65535) with { variant "/*unsigned 16 bit*/" }; + + type integer long (-2147483648 .. 2147483647) with { variant "/*32 bit*/" }; + + type integer unsignedlong (0 .. 4294967295) with { variant "/*unsigned 32 bit*/" }; + + type integer longlong /* ( -9223372036854775808 .. 9223372036854775807 ) */ with { variant "/*64 bit*/" }; + + type integer unsignedlonglong /* ( 0 .. 18446744073709551615 ) */ with { variant "/*unsigned 64 bit*/" }; + + type float IEEE754float with { variant "/*IEEE754 float*/" }; + + type float IEEE754double with { variant "/*IEEE754 double*/" }; + + type float IEEE754extfloat with { variant "/*IEEE754 extended float*/" }; + + type float IEEE754extdouble with { variant "/*IEEE754 extended double*/" }; + + type universal charstring utf8string with { variant "/*UTF-8*/" }; + + type universal charstring bmpstring ( char ( 0,0,0,0 ) .. char ( 0,0,255,255) ) with { variant "/*UCS-2*/" }; + + type universal charstring utf16string ( char ( 0,0,0,0 ) .. char ( 0,16,255,255) ) with { variant "/*UTF-16*/" }; + + type universal charstring iso8859string ( char ( 0,0,0,0 ) .. char ( 0,0,0,255) ) with { variant "/*8 bit*/" }; + + type record IDLfixed + { + unsignedshort digits, + short scale, + charstring value_ + } + with { + variant "/*IDL:fixed FORMAL/01-12-01 v.2.6*/"; + }; + + /* + type charstring char length (1); + + NOTE 1: The name of this useful type is the same as the TTCN-3 keyword used to denote universal + charstring values in the quadraple form. In general it is disallowed to use TTCN-3 keywords as + identifiers. The "char" useful type is a solitary exception and allowed only for backward compatibility + with previous versions of the TTCN-3 standard. (except Titan doesn't) + + NOTE 2: The special string "8 bit" defined in clause 28.2.3 may be used with this type to specify a given encoding + for its values. Also, other properties of the base type can be changed by using attribute mechanisms. + */ + + type universal charstring uchar length (1); + + /* + NOTE: Special strings defined in clause 28.2.3 except "8 bit" may be used with this type to specify a given + encoding for its values. Also, other properties of the base type can be changed by using attribute + mechanisms. + */ + + type bitstring bit length (1); + + type hexstring hex length (1); + + type octetstring octet length (1); + +} +with { +encode "XML"; +} diff --git a/COMMON/src/XSD.ttcn b/COMMON/src/XSD.ttcn new file mode 100644 index 00000000..64157a04 --- /dev/null +++ b/COMMON/src/XSD.ttcn @@ -0,0 +1,339 @@ +/****************************************************************************** +* Copyright (c) 2004, 2014 Ericsson AB +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/epl-v10.html +* +* Contributors: +* Zoltan Jasz - initial implementation and initial documentation +* Abhishek Gupta +* Attila Balasko +* Endre Kulcsar +* Gabor Bettesch +* Gabor Szalai +* Janos Kovesdi +* Sandor Palugyai +* Tibor Csondes +******************************************************************************/ +// +// File: XSD.ttcn +// Rev: R9A +// Prodnr: CNL 113 368 +// +//////////////////////////////////////////////////////////////////////////////// +module XSD { + +import from UsefulTtcn3Types all; + +//These constants are used in the XSD date/time type definitions +const charstring + dash := "-", + cln := ":", + year := "(0(0(0[1-9]|[1-9][0-9])|[1-9][0-9][0-9])|[1-9][0-9][0-9][0-9])", + yearExpansion := "(-([1-9][0-9]#(0,))#(,1))#(,1)", + month := "(0[1-9]|1[0-2])", + dayOfMonth := "(0[1-9]|[12][0-9]|3[01])", + hour := "([01][0-9]|2[0-3])", + minute := "([0-5][0-9])", + second := "([0-5][0-9])", + sFraction := "(.[0-9]#(1,))#(,1)", + endOfDayExt := "24:00:00(.0#(1,))#(,1)", + nums := "[0-9]#(1,)", + ZorTimeZoneExt := "(Z|[+-]((0[0-9]|1[0-3]):[0-5][0-9]|14:00))#(,1)", + durTime := "(T[0-9]#(1,)"& + "(H([0-9]#(1,)(M([0-9]#(1,)(S|.[0-9]#(1,)S))#(,1)|.[0-9]#(1,)S|S))#(,1)|"& + "M([0-9]#(1,)(S|.[0-9]#(1,)S)|.[0-9]#(1,)M)#(,1)|"& + "S|"& + ".[0-9]#(1,)S))" + +//anySimpleType + +type XMLCompatibleString AnySimpleType +with { +variant "XSD:anySimpleType"; +}; + +//anyType; + +type record AnyType +{ + record of String attr, + record of String elem_list +} +with { +variant "XSD:anyType"; +variant (attr) "anyAttributes"; +variant (elem_list) "anyElement"; +}; +// String types + +type XMLCompatibleString String +with { +variant "XSD:string"; +}; + +type XMLStringWithNoCRLFHT NormalizedString +with { +variant "XSD:normalizedString"; +}; + +type NormalizedString Token +with { +variant "XSD:token"; +}; + +type XMLStringWithNoWhitespace Name +with { +variant "XSD:Name"; +}; + +type XMLStringWithNoWhitespace NMTOKEN +with { +variant "XSD:NMTOKEN"; +}; + +type Name NCName +with { +variant "XSD:NCName"; +}; + +type NCName ID +with { +variant "XSD:ID"; +}; + +type NCName IDREF +with { +variant "XSD:IDREF"; +}; + +type NCName ENTITY +with { +variant "XSD:ENTITY"; +}; + +type octetstring HexBinary +with { +variant "XSD:hexBinary"; +}; + +type octetstring Base64Binary +with { +variant "XSD:base64Binary"; +}; + +type XMLStringWithNoCRLFHT AnyURI +with { +variant "XSD:anyURI"; +}; + +type charstring Language (pattern "[a-zA-Z]#(1,8)(-\w#(1,8))#(0,)") +with { +variant "XSD:language"; +}; +// Integer types + +type integer Integer +with { +variant "XSD:integer"; +}; + +type integer PositiveInteger (1 .. infinity) +with { +variant "XSD:positiveInteger"; +}; + +type integer NonPositiveInteger (-infinity .. 0) +with { +variant "XSD:nonPositiveInteger"; +}; + +type integer NegativeInteger (-infinity .. -1) +with { +variant "XSD:negativeInteger"; +}; + +type integer NonNegativeInteger (0 .. infinity) +with { +variant "XSD:nonNegativeInteger"; +}; + +type longlong Long +with { +variant "XSD:long"; +}; + +type unsignedlonglong UnsignedLong +with { +variant "XSD:unsignedLong"; +}; + +type long Int +with { +variant "XSD:int"; +}; + +type unsignedlong UnsignedInt +with { +variant "XSD:unsignedInt"; +}; + +type short Short +with { +variant "XSD:short"; +}; + +type unsignedshort UnsignedShort +with { +variant "XSD:unsignedShort"; +}; + +type byte Byte +with { +variant "XSD:byte"; +}; + +type unsignedbyte UnsignedByte +with { +variant "XSD:unsignedByte"; +}; + +// Float types + +type float Decimal +with { +variant "XSD:decimal"; +}; + +type IEEE754float Float +with { +variant "XSD:float"; +}; + +type IEEE754double Double +with { +variant "XSD:double"; +}; + +// Time types + +type charstring Duration (pattern + "{dash}#(,1)P({nums}(Y({nums}(M({nums}D{durTime}#(,1)|{durTime}#(,1))|D{durTime}#(,1))|" & + "{durTime}#(,1))|M({nums}D{durTime}#(,1)|{durTime}#(,1))|D{durTime}#(,1))|{durTime})") +with { +variant "XSD:duration"; +}; + +type charstring DateTime (pattern + "{yearExpansion}{year}{dash}{month}{dash}{dayOfMonth}T({hour}{cln}{minute}{cln}{second}" & + "{sFraction}|{endOfDayExt}){ZorTimeZoneExt}" ) +with { +variant "XSD:dateTime"; +}; + +type charstring Time (pattern + "({hour}{cln}{minute}{cln}{second}{sFraction}|{endOfDayExt}){ZorTimeZoneExt}" ) +with { +variant "XSD:time"; +}; + +type charstring Date (pattern + "{yearExpansion}{year}{dash}{month}{dash}{dayOfMonth}{ZorTimeZoneExt}" ) +with { +variant "XSD:date"; +}; + +type charstring GYearMonth (pattern + "{yearExpansion}{year}{dash}{month}{ZorTimeZoneExt}" ) +with { +variant "XSD:gYearMonth"; +}; + +type charstring GYear (pattern + "{yearExpansion}{year}{ZorTimeZoneExt}" ) +with { +variant "XSD:gYear"; +}; + +type charstring GMonthDay (pattern + "{dash}{dash}{month}{dash}{dayOfMonth}{ZorTimeZoneExt}" ) +with { +variant "XSD:gMonthDay"; +}; + +type charstring GDay (pattern + "{dash}{dash}{dash}{dayOfMonth}{ZorTimeZoneExt}" ) +with { +variant "XSD:gDay"; +}; + +type charstring GMonth (pattern + "{dash}{dash}{month}{ZorTimeZoneExt}" ) +with { +variant "XSD:gMonth"; +}; + +// Sequence types + +type record of NMTOKEN NMTOKENS +with { +variant "XSD:NMTOKENS"; +}; + +type record of IDREF IDREFS +with { +variant "XSD:IDREFS"; +}; + +type record of ENTITY ENTITIES +with { +variant "XSD:ENTITIES"; +}; + +type record QName +{ + AnyURI uri optional, + NCName name +} +with { +variant "XSD:QName"; +}; + +// Boolean type + +type boolean Boolean +with { +variant "XSD:boolean"; +}; + +//TTCN-3 type definitions supporting the mapping of W3C XML Schema built-in datatypes + +type utf8string XMLCompatibleString +( + char(0,0,0,9)..char(0,0,0,9), + char(0,0,0,10)..char(0,0,0,10), + char(0,0,0,12)..char(0,0,0,12), + char(0,0,0,32)..char(0,0,215,255), + char(0,0,224,0)..char(0,0,255,253), + char(0,1,0,0)..char(0,16,255,253) +) + +type utf8string XMLStringWithNoWhitespace +( + char(0,0,0,33)..char(0,0,215,255), + char(0,0,224,0)..char(0,0,255,253), + char(0,1,0,0)..char(0,16,255,253) +) + +type utf8string XMLStringWithNoCRLFHT +( + char(0,0,0,32)..char(0,0,215,255), + char(0,0,224,0)..char(0,0,255,253), + char(0,1,0,0)..char(0,16,255,253) +) + +} +with{ +encode "XML" +} diff --git a/COMMON/src/general_typedefs.ttcn b/COMMON/src/general_typedefs.ttcn new file mode 100644 index 00000000..6432e533 --- /dev/null +++ b/COMMON/src/general_typedefs.ttcn @@ -0,0 +1,236 @@ +/****************************************************************************** +* Copyright (c) 2004, 2014 Ericsson AB +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/epl-v10.html +* +* Contributors: +* Zoltan Jasz - initial implementation and initial documentation +* Abhishek Gupta +* Attila Balasko +* Endre Kulcsar +* Gabor Bettesch +* Gabor Szalai +* Janos Kovesdi +* Sandor Palugyai +* Tibor Csondes +******************************************************************************/ +// +// File: general_typedefs.ttcn +// Rev: R9A +// Prodnr: CNL 113 368 +// Reference: + +module general_typedefs +{ + +group SimpleNativeTypes +{ +//octetstring with fixed length +type octetstring OCT0n length(0); +type octetstring OCT1n length(1); +type octetstring OCT2n length(2); +type octetstring OCT3n length(3); +type octetstring OCT4n length(4); +type octetstring OCT5n length(5); +type octetstring OCT6n length(6); +type octetstring OCT7n length(7); +type octetstring OCT8n length(8); +type octetstring OCT9n length(9); +type octetstring OCT10n length(10); +type octetstring OCT11n length(11); +type octetstring OCT12n length(12); +type octetstring OCT13n length(13); +type octetstring OCT14n length(14); +type octetstring OCT15n length(15); +type octetstring OCT16n length(16); +type octetstring OCT17n length(17); +type octetstring OCT18n length(18); +type octetstring OCT19n length(19); +type octetstring OCT20n length(20); +type octetstring OCT28n length(28); +type octetstring OCT32n length(32); +type octetstring OCT34n length(34); +type octetstring OCT46n length(46); +type octetstring OCT50n length(50); +type octetstring OCT69n length(69); +type octetstring OCT100n length(100); +type octetstring OCT128n length(128); +type octetstring OCT500n length(500); +type octetstring OCTNn; + +//octetstring with length interval +type octetstring OCT1_3n length(1..3); +type octetstring OCT1_4n length(1..4); +type octetstring OCT1_5n length(1..5); +type octetstring OCT1_6n length(1..6); +type octetstring OCT1_7n length(1..7); +type octetstring OCT1_8n length(1..8); +type octetstring OCT1_12n length(1..12); +type octetstring OCT1_15n length(1..15); +type octetstring OCT1_16n length(1..16); +type octetstring OCT1_18n length(1..18); +type octetstring OCT1_20n length(1..20); +type octetstring OCT1_24n length(1..24); +type octetstring OCT1_34n length(1..34); +type octetstring OCT1_46n length(1..46); +type octetstring OCT1_50n length(1..50); +type octetstring OCT1_112n length(1..112); +type octetstring OCT1_127n length(1..127); +type octetstring OCT1_128n length(1..128); +type octetstring OCT1_172n length(1..172); +type octetstring OCT3_5n length(3..5); +type octetstring OCT3_7n length(3..7); +type octetstring OCT3_8n length(3..8); +type octetstring OCT3_17n length(3..17); +type octetstring OCT4_8n length(4..8); + +//hexstring with fixed length +type hexstring HEX24n length(24); + +//hexstring with length interval +type hexstring HEX0_18n length(0..18); +type hexstring HEX1_20n length(1..20); + + +//bitstring with fixed length +type bitstring BIT1n length(1); +type bitstring BIT2n length(2); +type bitstring BIT3n length(3); +type bitstring BIT4n length(4); +type bitstring BIT5n length(5); +type bitstring BIT6n length(6); +type bitstring BIT7n length(7); +type bitstring BIT8n length(8); +type bitstring BIT9n length(9); +type bitstring BIT12n length(12); +type bitstring BIT14n length(14); +type bitstring BIT15n length(15); +type bitstring BIT16n length(16); +type bitstring BIT56n length(56); + +//bitstring with length interval +type bitstring BIT14_24n length(14..24); + +//bitstring to be padded with fixed length +type bitstring BIT1np length(1); +type bitstring BIT2np length(2); +type bitstring BIT3np length(3); +type bitstring BIT4np length(4); +type bitstring BIT5np length(5); +type bitstring BIT6np length(6); +type bitstring BIT7np length(7); +type bitstring BIT15np length(15); + +//integer with fixed bit number +type integer INT3nb (0..7); +type integer INT4nb (0..15); +type integer INT5nb (0..31); +type integer INT8nb (0..255); + +//integer with fixed bit number and with padding +type integer INT2nbp (0..3); +type integer INT1nbp (0..1); +type integer INT3nbp (0..7); +type integer INT5nbp (0..31); +type integer INT9nbp (0..511); +type integer INT13nbp (0..8095); +type integer INT15nbp (0..32767); + +}// end group NativeTypes + +group SimpleRAWEncodedTypes +{ +//octetstring with fixed length +type octetstring Dummy length(0) with { variant "FIELDLENGTH(0)" }; +type octetstring OCT0 length(0) with { variant "FIELDLENGTH(0)" }; +type octetstring OCT1 length(1) with { variant "FIELDLENGTH(1)" }; +type octetstring OCT2 length(2) with { variant "FIELDLENGTH(2)" }; +type octetstring OCT3 length(3) with { variant "FIELDLENGTH(3)" }; +type octetstring OCT4 length(4) with { variant "FIELDLENGTH(4)" }; +type octetstring OCT5 length(5) with { variant "FIELDLENGTH(5)" }; +type octetstring OCT6 length(6) with { variant "FIELDLENGTH(6)" }; +type octetstring OCT7 length(7) with { variant "FIELDLENGTH(7)" }; +type octetstring OCT8 length(8) with { variant "FIELDLENGTH(8)" }; +type octetstring OCT9 length(9) with { variant "FIELDLENGTH(9)" }; +type octetstring OCT10 length(10) with { variant "FIELDLENGTH(10)" }; +type octetstring OCT11 length(11) with { variant "FIELDLENGTH(11)" }; +type octetstring OCT12 length(12) with { variant "FIELDLENGTH(12)" }; +type octetstring OCT13 length(13) with { variant "FIELDLENGTH(13)" }; +type octetstring OCT14 length(14) with { variant "FIELDLENGTH(14)" }; +type octetstring OCT15 length(15) with { variant "FIELDLENGTH(15)" }; +type octetstring OCT16 length(16) with { variant "FIELDLENGTH(16)" }; +type octetstring OCT17 length(17) with { variant "FIELDLENGTH(17)" }; +type octetstring OCT18 length(18) with { variant "FIELDLENGTH(18)" }; +type octetstring OCT19 length(19) with { variant "FIELDLENGTH(19)" }; +type octetstring OCT20 length(20) with { variant "FIELDLENGTH(20)" }; +type octetstring OCT32 length(32) with { variant "FIELDLENGTH(32)" }; +type octetstring OCT34 length(34) with { variant "FIELDLENGTH(34)" }; +type octetstring OCT46 length(46) with { variant "FIELDLENGTH(46)" }; + +//octetstring with length interval +type octetstring OCT1_12 length(1..12) with { variant "" }; +type octetstring OCT1_8 length(1..8) with { variant "" }; +type octetstring OCT3_8 length(3..8) with { variant "" }; +type octetstring OCT1_50 length(1..50) with { variant "" }; +type octetstring OCTN with { variant "" }; + +//bitstring with fixed length +type bitstring BIT1 length(1) with { variant "FIELDLENGTH (1)" }; +type bitstring BIT2 length(2) with { variant "FIELDLENGTH(2)" }; +type bitstring BIT3 length(3) with { variant "FIELDLENGTH(3)" }; +type bitstring BIT4 length(4) with { variant "FIELDLENGTH(4)" }; +type bitstring BIT5 length(5) with { variant "FIELDLENGTH(5)" }; +type bitstring BIT6 length(6) with { variant "FIELDLENGTH(6)" }; +type bitstring BIT7 length(7) with { variant "FIELDLENGTH(7)" }; +type bitstring BIT8 length(8) with { variant "FIELDLENGTH(8)" }; +type bitstring BIT9 length(9) with { variant "FIELDLENGTH(9)" }; +type bitstring BIT12 length(12) with { variant "FIELDLENGTH(12)" }; +type bitstring BIT14 length(14) with { variant "FIELDLENGTH(14)" }; +type bitstring BIT15 length(15) with { variant "FIELDLENGTH(15)" }; +type bitstring BIT16 length(16) with { variant "FIELDLENGTH(16)" }; +type bitstring BIT24 length(24) with { variant "FIELDLENGTH(24)" }; +type bitstring BIT31 length(31) with { variant "FIELDLENGTH(31)" }; +type bitstring BIT56 length(56) with { variant "FIELDLENGTH(56)" }; + +type hexstring HEX1 length(1) with {variant "FIELDLENGTH(1)"}; + +//integer with fixed octet number +type integer INT1 (0..255) with { variant "FIELDLENGTH(8)" }; +type integer LIN1 (0..255) with { variant "FIELDLENGTH(8)" } +type integer LIN2 (0..65535) with { variant "FIELDLENGTH(16)" } + +//integer with fixed bit number +type integer INT7b (0..127) with { variant "FIELDLENGTH(7)" }; + +//integer record +type record of integer Integers; +type record of Integers Integer_array; + +} with {encode "RAW"} // end group SimpleRAWEncodedTypes + + group ComponentTypes + { + type component Dummy_comptype {} + } + + group CompositeTypes + { + type enumerated Protocols + { mtp3, sccp, isup, bicc, qaal2, gcp, bssap, bssmap, ranap, dtap } + + type record of OCT1 OCT1List; + type record of OCT2 OCT2List; + type record of OCT3 OCT3List; + type record of OCT4 OCT4List; + type record of OCT5 OCT5List; + type record of OCT6 OCT6List; + type record of OCT7 OCT7List; + + type record of Dummy_comptype ListOfDummy_comptype; + + type record of Protocols ProtocolList; + } + +}with { encode "RAW"} /* End of module general_typedefs */ diff --git a/COMMON/src/http_www_w3_org_XML_1998_namespace.ttcn b/COMMON/src/http_www_w3_org_XML_1998_namespace.ttcn new file mode 100644 index 00000000..99f570ad --- /dev/null +++ b/COMMON/src/http_www_w3_org_XML_1998_namespace.ttcn @@ -0,0 +1,150 @@ +/****************************************************************************** +* Copyright (c) 2004, 2014 Ericsson AB +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/epl-v10.html +* +* Contributors: +* Zoltan Jasz - initial implementation and initial documentation +* Abhishek Gupta +* Attila Balasko +* Endre Kulcsar +* Gabor Bettesch +* Gabor Szalai +* Janos Kovesdi +* Sandor Palugyai +* Tibor Csondes +******************************************************************************/ +// +// File: http_www_w3_org_XML_1998_namespace.ttcn +// Rev: R9A +// Prodnr: CNL 113 368 +// Reference: + +module http_www_w3_org_XML_1998_namespace { + + +import from XSD all; + + +/* See http://www.w3.org/XML/1998/namespace.html and + http://www.w3.org/TR/REC-xml for information about this namespace. + + This schema document describes the XML namespace, in a form + suitable for import by other schema documents. + + Note that local names in this namespace are intended to be defined + only by the World Wide Web Consortium or its subgroups. The + following names are currently defined in this namespace and should + not be used with conflicting semantics by any Working Group, + specification, or document instance: + + base (as an attribute name): denotes an attribute whose value + provides a URI to be used as the base for interpreting any + relative URIs in the scope of the element on which it + appears; its value is inherited. This name is reserved + by virtue of its definition in the XML Base specification. + + lang (as an attribute name): denotes an attribute whose value + is a language code for the natural language of the content of + any element; its value is inherited. This name is reserved + by virtue of its definition in the XML specification. + + space (as an attribute name): denotes an attribute whose + value is a keyword indicating what whitespace processing + discipline is intended for the content of the element; its + value is inherited. This name is reserved by virtue of its + definition in the XML specification. + + Father (in any context at all): denotes Jon Bosak, the chair of + the original XML Working Group. This name is reserved by + the following decision of the W3C XML Plenary and + XML Coordination groups: + + In appreciation for his vision, leadership and dedication + the W3C XML Plenary on this 10th day of February, 2000 + reserves for Jon Bosak in perpetuity the XML name + xml:Father */ + + +/* This schema defines attributes and an attribute group + suitable for use by + schemas wishing to allow xml:base, xml:lang or xml:space attributes + on elements they define. + + To enable this, such a schema must import this schema + for the XML namespace, e.g. as follows: */ +/* < */ +/* schema . . . */ +/* > */ +/* . . . */ +/* < */ +/* import namespace="http://www.w3.org/XML/1998/namespace" + schemaLocation="http://www.w3.org/2001/03/xml.xsd"/ */ +/* > */ +/* Subsequently, qualified reference to any of the attributes + or the group defined below will have the desired effect, e.g. */ +/* < */ +/* type . . . */ +/* > */ +/* . . . */ +/* < */ +/* attributeGroup ref="xml:specialAttrs"/ */ +/* > */ +/* will define a type which will schema-validate an instance + element with any of those attributes */ + + +/* In keeping with the XML Schema WG's standard versioning + policy, this schema document will persist at + http://www.w3.org/2001/03/xml.xsd. + At the date of issue it can also be found at + http://www.w3.org/2001/xml.xsd. + The schema document at that URI may however change in the future, + in order to remain compatible with the latest version of XML Schema + itself. In other words, if the XML Schema namespace changes, the version + of this document at + http://www.w3.org/2001/xml.xsd will change + accordingly; the version at + http://www.w3.org/2001/03/xml.xsd will not change. */ + + +/* In due course, we should install the relevant ISO 2- and 3-letter + codes as the enumerated possible values . . . */ +type XSD.Language Lang +with { +variant "name as uncapitalized"; +variant "attribute"; +}; + + +type enumerated Space +{ + default_, + preserve +} +with { +variant "text 'default_' as 'default'"; +variant "name as uncapitalized"; +variant "defaultForEmpty as 'preserve'"; +variant "attribute"; +}; + + +/* See http://www.w3.org/TR/xmlbase/ for + information about this attribute. */ +type XSD.AnyURI Base +with { +variant "name as uncapitalized"; +variant "attribute"; +}; + + +} +with { +encode "XML"; +variant "namespace as 'http://www.w3.org/XML/1998/namespace'"; +variant "controlNamespace 'http://www.w3.org/2001/XMLSchema-instance' prefix 'xsi'"; +extension "version R9A" +} -- cgit v1.2.3