/******************************************************************************
* Copyright (c) 2000-2021 Ericsson Telecom AB
*
* XSD to TTCN-3 Translator
*
* 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:
*   Balasko, Jeno
*   Lovassy, Arpad
*   Raduly, Csaba
*   Szabo, Bence Janos
*
******************************************************************************/
//
//  File:          NoTargetNamespace.ttcn
//  Description:
//  References:
//  Rev:
//  Prodnr:
//  Updated:
//  Contact:       http://ttcn.ericsson.se
//
////////////////////////////////////////////////////////////////////////////////
//	Generated from file(s):
//	- jmdict-good.xsd
//			/* xml version = "1.0" encoding = "UTF-8" */
//			/* targetnamespace = "NoTargetNamespace" */
////////////////////////////////////////////////////////////////////////////////
//     Modification header(s):
//-----------------------------------------------------------------------------
//  Modified by:
//  Modification date:
//  Description:
//  Modification contact:
//------------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////////////


module NoTargetNamespace_JMdict_e {


import from XSD all;


type record JMdict
{
	record length(1 .. infinity) of Entry entry_list
}
with {
  variant "element";
  variant (entry_list) "untagged";
  variant (entry_list[-]) "name as 'entry'";
};


type record Entry
{
	Ent_seq ent_seq,
	record of K_ele k_ele_list,
	record length(1 .. infinity) of R_ele r_ele_list,
	Info info optional,
	record length(1 .. infinity) of Sense sense_list
}
with {
  variant "name as uncapitalized";
  variant "element";
  variant (k_ele_list) "untagged";
  variant (k_ele_list[-]) "name as 'k_ele'";
  variant (r_ele_list) "untagged";
  variant (r_ele_list[-]) "name as 'r_ele'";
  variant (sense_list) "untagged";
  variant (sense_list[-]) "name as 'sense'";
};


type XSD.Integer Ent_seq
with {
  variant "name as uncapitalized";
  variant "element";
};


type record K_ele
{
	Keb keb,
	record of Ke_inf ke_inf_list,
	record of Ke_pri ke_pri_list
}
with {
  variant "name as uncapitalized";
  variant "element";
  variant (ke_inf_list) "untagged";
  variant (ke_inf_list[-]) "name as 'ke_inf'";
  variant (ke_pri_list) "untagged";
  variant (ke_pri_list[-]) "name as 'ke_pri'";
};


type XSD.String Keb
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Ke_inf
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Ke_pri
with {
  variant "name as uncapitalized";
  variant "element";
};


type record R_ele
{
	Reb reb,
	union {
		Re_nokanji re_nokanji,
		record of Re_restr re_restr_list
	} choice,
	record of Re_inf re_inf_list,
	record of Re_pri re_pri_list
}
with {
  variant "name as uncapitalized";
  variant "element";
  variant (choice) "untagged";
  variant (choice.re_restr_list) "untagged";
  variant (choice.re_restr_list[-]) "name as 're_restr'";
  variant (re_inf_list) "untagged";
  variant (re_inf_list[-]) "name as 're_inf'";
  variant (re_pri_list) "untagged";
  variant (re_pri_list[-]) "name as 're_pri'";
};


type XSD.String Reb
with {
  variant "name as uncapitalized";
  variant "element";
};


type record Re_nokanji
{

}
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.String Re_restr
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Re_inf
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Re_pri
with {
  variant "name as uncapitalized";
  variant "element";
};


type record Info
{
	Audit audit
}
with {
  variant "name as uncapitalized";
  variant "element";
};


type record Audit
{
	Upd_date upd_date,
	Upd_detl upd_detl
}
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NMTOKEN Upd_date
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.String Upd_detl
with {
  variant "name as uncapitalized";
  variant "element";
};


type record Sense
{
	record of Stagk stagk_list,
	record of Stagr stagr_list,
	record of Pos pos_list,
	record of Xref xref_list,
	record of Ant ant_list,
	record of Field field_list,
	record of Misc misc_list,
	S_inf s_inf optional,
	union {
		record of Dial dial_list,
		record length(1 .. infinity) of Lsource lsource_list
	} choice,
	record of Gloss gloss_list
}
with {
  variant "name as uncapitalized";
  variant "element";
  variant (stagk_list) "untagged";
  variant (stagk_list[-]) "name as 'stagk'";
  variant (stagr_list) "untagged";
  variant (stagr_list[-]) "name as 'stagr'";
  variant (pos_list) "untagged";
  variant (pos_list[-]) "name as 'pos'";
  variant (xref_list) "untagged";
  variant (xref_list[-]) "name as 'xref'";
  variant (ant_list) "untagged";
  variant (ant_list[-]) "name as 'ant'";
  variant (field_list) "untagged";
  variant (field_list[-]) "name as 'field'";
  variant (misc_list) "untagged";
  variant (misc_list[-]) "name as 'misc'";
  variant (choice) "untagged";
  variant (choice.dial_list) "untagged";
  variant (choice.dial_list[-]) "name as 'dial'";
  variant (choice.lsource_list) "untagged";
  variant (choice.lsource_list[-]) "name as 'lsource'";
  variant (gloss_list) "untagged";
  variant (gloss_list[-]) "name as 'gloss'";
};


type XSD.String Stagk
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Stagr
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Pos
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.String Xref
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.String Ant
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Field
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Misc
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.String S_inf
with {
  variant "name as uncapitalized";
  variant "element";
};


type XSD.NCName Dial
with {
  variant "name as uncapitalized";
  variant "element";
};


type record Lsource
{
	record of XSD.String embed_values,
	XSD.Language lang optional,
	XSD.NCName ls_wasei optional
}
with {
  variant "name as uncapitalized";
  variant "embedValues";
  variant "element";
  variant (lang) "attribute";
  variant (ls_wasei) "attribute";
};


type record Gloss
{
	record of XSD.String embed_values,
	XSD.Language lang
}
with {
  variant "name as uncapitalized";
  variant "embedValues";
  variant "element";
  variant (lang) "attribute";
};


}
with {
  encode "XML";
  variant "controlNamespace 'http://www.w3.org/2001/XMLSchema-instance' prefix 'xsi'";
  variant "elementFormQualified";
}
