[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
_type.contents = {"file":URL "save":Code "mode":Code "dupl":Code "miss":Code}
Note
that _type.contents is implicitly interpreted (in the demonstration
DDLm dictionaries) to describe the contents of Lists, not the whole
list, so the above use is in line with this. I therefore suggest that we
drop _enumerated_set.table_id from DDLm completely as there is no use
case.
James.
Reply to: [list | sender only]
[ddlm-group] _enumerated_set.table_id
- To: ddlm-group <ddlm-group@iucr.org>
- Subject: [ddlm-group] _enumerated_set.table_id
- From: James Hester <jamesrhester@gmail.com>
- Date: Mon, 20 Apr 2015 12:45:22 +1000
- DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;h=mime-version:date:message-id:subject:from:to:content-type;bh=KzvwMm+Q1k5wPX6pVmsmSflTu4e99u3af7U0ZDEaAoY=;b=IKp/uO4FzBi67SqOS/uysxt8lypFUc4GdF8YpznCkgsi7K4iKyDBAVvNej08icJKV+0yrikFY2FvogJ+a1KqkYyGK1kCAoxSCpkcH0dGhh2DQz7HXgCm6+u5/IJTSWgTLLsqbW+RbA8ljhwhLz07b87hpAc5wMuDhV2KxlGalq76b1ASi64h0yksGbqOvlCnjAyd5BlLPAveRb/lxhUBGLs5rk95bd13rVFJj3ha4NiJx1QamLLiLCe1OOWV4VK5wTN0r0kkt/f1S8bPd1xSR/e93h1Gbm1XYDdnIAffuNFvBUVKD2jBFqqfkQkU1synnnZrD9tRCjnA8aolNmmaKw==
Dear DDLm group,
(originally sent Feb 5th)
I have been going through ddl.dic
with an eye to writing automated dictionary checking routines and came
across _enumerated_set.table_id. This attribute is used precisely once
in all the draft DDLm dictionaries (which include all of the previous DDL1 dictionaries): and that is in ddl.dic itself in the definition
for the DDLm _import.get attribute. This attribute is intended to specify in a
machine-readable way the possible values of CIF2 Table keys. In this
particular case the CIF2 tables are themselves within a List:
_type.purpose Import
_type.source Assigned
_type.container List
_type.contents Table(Code)
_type.dimension [{}]
loop_
_enumeration_set.state
_enumeration_set.detail
_enumeration_set.table_id
1 'filename/URI of source dictionary' file
2 'save framecode of source definition' save
3 'mode for including save frames' mode
4 'option for duplicate entries' dupl
5 'option for missing duplicate entries' miss
loop_
_method.purpose
_method.expression
Evaluation
;
With i as import
_import.get = [{"file":i.file_id, "save":i.frame_id, "mode":i.mode,
"dupl":i.if_dupl, "miss":i.if_miss}]
;
Because it is in the _enumerated_set category, the category key _enumerated_set.state must be present when listing these table keys, but instead of _enumerated_set.state listing the actual permitted values, it contains meaningless dummy values; table_id then lists table keys, not values, and so the restraints on the values of the keys are absent. This looks like an abuse of the enumerated_set category when the natural solution as proposed by Doug du Boulay is to simply enhance _type.contents, i.e.
_type.purpose Import
_type.source Assigned
_type.container List
_type.contents Table(Code)
_type.dimension [{}]
loop_
_enumeration_set.state
_enumeration_set.detail
_enumeration_set.table_id
1 'filename/URI of source dictionary' file
2 'save framecode of source definition' save
3 'mode for including save frames' mode
4 'option for duplicate entries' dupl
5 'option for missing duplicate entries' miss
loop_
_method.purpose
_method.expression
Evaluation
;
With i as import
_import.get = [{"file":i.file_id, "save":i.frame_id, "mode":i.mode,
"dupl":i.if_dupl, "miss":i.if_miss}]
;
Because it is in the _enumerated_set category, the category key _enumerated_set.state must be present when listing these table keys, but instead of _enumerated_set.state listing the actual permitted values, it contains meaningless dummy values; table_id then lists table keys, not values, and so the restraints on the values of the keys are absent. This looks like an abuse of the enumerated_set category when the natural solution as proposed by Doug du Boulay is to simply enhance _type.contents, i.e.
Are we in agreement on this?

--
T +61 (02) 9717 9907
F +61 (02) 9717 3145
M +61 (04) 0249 4148
F +61 (02) 9717 3145
M +61 (04) 0249 4148
_______________________________________________ ddlm-group mailing list ddlm-group@iucr.org http://mailman.iucr.org/cgi-bin/mailman/listinfo/ddlm-group
Reply to: [list | sender only]
- Follow-Ups:
- Re: [ddlm-group] _enumerated_set.table_id (Bollinger, John C)
- Prev by Date: [ddlm-group] DDLm update
- Next by Date: Re: [ddlm-group] _enumerated_set.table_id
- Prev by thread: [ddlm-group] Proposal to remove _enumerated.table_id from DDLm andfix _import.get
- Next by thread: Re: [ddlm-group] _enumerated_set.table_id
- Index(es):