--/////////////////////////////////////////////////////////////////////////////
-- Copyright (c) 2000-2025 Ericsson Telecom AB
-- All rights reserved. This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License v2.0
-- which accompanies this distribution, and is available at
-- https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
--
-- Contributors:
--   Baranyi, Botond
--
--/////////////////////////////////////////////////////////////////////////////
Types
DEFINITIONS 

AUTOMATIC TAGS
EXTENSIBILITY IMPLIED
::=
 BEGIN

IMPORTS ; -- nothing


ERROR-CLASS ::= CLASS
{
  &category	PrintableString(SIZE(1)),
  &code		INTEGER,
  &Type	DEFAULT INTEGER
}
WITH SYNTAX {&category &code [&Type]}

ErrorSet ERROR-CLASS ::=
{
  {"A" 1 [1] INTEGER} |
  {"A" 2 [1] VisibleString} |
  {"B" 1 [1] PrintableString} |
  {"B" 2 [1] BOOLEAN} |
  oneErrorObject
}

oneErrorObject ERROR-CLASS ::= { "C" 3 ENUMERATED{foobar} }

ErrorReturn ::= SEQUENCE
{
  errorCategory	ERROR-CLASS.&category ({ErrorSet}) OPTIONAL,
  errors	SEQUENCE OF SEQUENCE
  {
    errorCode	ERROR-CLASS.&code({ErrorSet}{@errorCategory}),
    errorInfo	[99] ERROR-CLASS.&Type({ErrorSet}{@errorCategory,@.errorCode})
  } OPTIONAL
}

END
