#\#CIF_2.0 # SPDX-License-Identifier: CC-BY-4.0 ################################################################################ # # # Topology CIF dictionary # # # ################################################################################ data_CIF_TOPO _dictionary.title CIF_TOPO _dictionary.class Instance _dictionary.version 0.9.7 _dictionary.date 2026-05-01 _dictionary.uri https://raw.githubusercontent.com/COMCIFS/TopoCif/main/cif_topo.dic _dictionary.ddl_conformance 4.2.0 _dictionary.licensing_SPDX CC-BY-4.0 _dictionary.namespace CifCore _description.text ; The CIF_TOPO dictionary provides data items for describing crystal structure topology. ; save_CIF_TOPO_HEAD _definition.id CIF_TOPO_HEAD _definition.scope Category _definition.class Head _definition.update 2024-05-20 _description.text ; The CIF_TOPO_HEAD category is the top-level category for all categories in the CIF_TOPO dictionary. Head categories from other dictionaries are reparented to this category. ; _name.category_id CIF_TOPO _name.object_id CIF_TOPO_HEAD _import.get [{'file':cif_core.dic 'mode':Full 'save':CIF_CORE_HEAD}] save_ save_TOPOL _definition.id TOPOL _definition.scope Category _definition.class Set _definition.update 2024-05-20 _description.text ; The TOPOL category covers data on connectivity between atoms and structural groups and the related structural properties as calculated from the ATOM, CELL and SPACE_GROUP data. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL _import.get [{'file':topo_examples.cif 'save':topol_examples}] save_ save_topol.special_details _definition.id '_topol.special_details' _definition.update 2021-09-14 _description.text ; A description of topological information not covered by the existing data items in the topology categories. ; _name.category_id topol _name.object_id special_details _type.purpose Describe _type.source Assigned _type.container Single _type.contents Text save_ save_TOPOL_ATOM _definition.id TOPOL_ATOM _definition.scope Category _definition.class Loop _definition.update 2024-05-20 _description.text ; The TOPOL_ATOM category provides information on the atoms of the initial structure that compose links or nodes of a net. The _topol_atom.atom_label value must match a value for _atom_site.label. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_ATOM _category_key.name '_topol_atom.id' save_ save_topol_atom.atom_label _definition.id '_topol_atom.atom_label' _definition.update 2021-11-16 _description.text ; A pointer to an atom that is associated with a link or a node (not including link end-point atoms). It must coincide with a value given for _atom_site.label. ; _name.category_id topol_atom _name.object_id atom_label _name.linked_item_id '_atom_site.label' _type.purpose Link _type.source Related _type.container Single _type.contents Word save_ save_topol_atom.element_symbol _definition.id '_topol_atom.element_symbol' _definition.update 2021-09-05 _description.text ; The element symbol for this atom, written in accordance with the IUPAC systematic nomenclature for periodic elements. This should be a single element symbol found on the official IUPAC Periodic Table. For example: 'C', 'H', or 'Co', without isotope or charge. Data items in the ATOM_SITE category that do not correspond to elements of the Periodic Table should be represented here as '.'. ; _name.category_id topol_atom _name.object_id element_symbol _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text save_ save_topol_atom.id _definition.id '_topol_atom.id' _definition.update 2021-10-08 _description.text ; The unique identifier of a topological "atom" that is associated with a link or node. ; _name.category_id topol_atom _name.object_id id _type.purpose Key _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_atom.link_id _definition.id '_topol_atom.link_id' _definition.update 2021-10-08 _description.text ; The link associated with this atom, if applicable. It must match a value provided for _topol_link.id. Note that this association is in a bridging or molecular linker sense, not the end points of the link. For example, a net may specify a link that is composed of a carbonyl CO group or an aromatic ring, representing those groups for the purposes of the net. ; _name.category_id topol_atom _name.object_id link_id _name.linked_item_id '_topol_link.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_atom.node_id _definition.id '_topol_atom.node_id' _definition.update 2021-10-08 _description.text ; The node associated with this atom, if applicable. It must match a value provided for _topol_node.id. ; _name.category_id topol_atom _name.object_id node_id _name.linked_item_id '_topol_node.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_atom.symop_id _definition.id '_topol_atom.symop_id' _definition.update 2021-11-16 _description.text ; The identifier of the symmetry operation that is to be applied to the coordinates of the atom given by _topol_atom.atom_label before addition of the translations given by _topol_atom.translation. The value must match a value of _space_group_symop.id. If this item is omitted or assigned to '.', the identity operation is assumed. ; _name.category_id topol_atom _name.object_id symop_id _name.linked_item_id '_space_group_symop.id' _type.purpose Link _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1:192 _enumeration.default 1 _units.code none save_ save_topol_atom.translation _definition.id '_topol_atom.translation' _definition.update 2021-10-21 _description.text ; The lattice translation vector that must be added to the coordinates after application of the symmetry operation specified by _topol_atom.symop_id to generate the atom belonging to a link or a node. For example, if the symmetry operation referred to by _topol_atom.symop_id is (x-1/2,y+1/2,z), _topol_atom.translation is [0,-1,0] and the original position is (0.2,0.7,1.0) in fractional coordinates, then the resultant position is (-0.3,0.2,1.0). Alternatively, _topol_atom.translation_x, _topol_atom.translation_y and _topol_atom.translation_z data items may be used to describe separate components of the vector for CIF 1 compatibility. If this item is omitted or assigned to '.' it is assumed to be equal to [0,0,0]. ; _name.category_id topol_atom _name.object_id translation _type.purpose Number _type.source Derived _type.container Matrix _type.dimension '[3]' _type.contents Integer _enumeration.default [0 0 0] _units.code none save_ save_topol_atom.translation_x _definition.id '_topol_atom.translation_x' _definition.update 2021-10-21 _description.text ; The x component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_atom.symop_id to generate an atom belonging to a link or a node. Default value is 0. ; _name.category_id topol_atom _name.object_id translation_x _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_atom.translation_y _definition.id '_topol_atom.translation_y' _definition.update 2021-10-21 _description.text ; The y component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_atom.symop_id to generate an atom belonging to a link or a node. Default value is 0. ; _name.category_id topol_atom _name.object_id translation_y _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_atom.translation_z _definition.id '_topol_atom.translation_z' _definition.update 2021-10-21 _description.text ; The z component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_atom.symop_id to generate an atom belonging to a link or a node. Default value is 0. ; _name.category_id topol_atom _name.object_id translation_z _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_TOPOL_ENTANGL _definition.id TOPOL_ENTANGL _definition.scope Category _definition.class Set _definition.update 2024-05-20 _description.text ; The TOPOL_ENTANGL category describes entanglements in the underlying net. This category is a placeholder for future development of descriptions of entanglement. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_ENTANGL save_ save_TOPOL_LINK _definition.id TOPOL_LINK _definition.scope Category _definition.class Loop _definition.update 2024-05-20 _description.text ; The TOPOL_LINK category describes the crystal structure connectivity and encodes the weighted coloured symmetry-labelled quotient graph, from which the whole periodic net describing the overall topology of the crystal structure can be restored. The definition of symmetry-labelled quotient graph was given by Klein (1996) and examples of weights and colours for the graph edges and vertices are provided by Blatov (2006). The connections described in TOPOL_LINK may correspond to any vectors in the structure, not just bonds or contacts. The two end-point references are to nodes listed in TOPOL_NODE using _topol_link.node_id_1 and _topol_link.node_id_2. Other items in this category are optional. If the link itself represents atoms (as in the case of a molecular linker), the atoms comprising the link must be referenced by _topol_atom.link_id. References: Klein, H.-J. (1996). Systematic generation of models for crystal structures. Math. Model. Sci. Comput. 6, 325-330; Blatov, V. A. (2006). A method for hierarchical comparative analysis of crystal structures. Acta Cryst. A62, 356-364, DOI:10.1107/S0108767306025591. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_LINK _category_key.name '_topol_link.id' save_ save_topol_link.distance _definition.id '_topol_link.distance' _definition.update 2018-01-30 _description.text ; The link length in angstroms. ; _name.category_id topol_link _name.object_id distance _type.purpose Measurand _type.source Derived _type.container Single _type.contents Real _enumeration.range 0.: _units.code angstroms save_ save_topol_link.distance_su _definition.id '_topol_link.distance_su' _definition.update 2023-07-11 _description.text ; Standard uncertainty of _topol_link.distance. ; _name.category_id topol_link _name.object_id distance_su _name.linked_item_id '_topol_link.distance' _type.purpose SU _type.source Related _type.container Single _type.contents Real _units.code angstroms save_ save_topol_link.id _definition.id '_topol_link.id' _definition.update 2021-10-08 _description.text ; The identifier of the link. ; _name.category_id topol_link _name.object_id id _type.purpose Key _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_link.label _definition.id '_topol_link.label' _definition.update 2021-09-12 _description.text ; An optional not necessarily unique label for this link. ; _name.category_id topol_link _name.object_id label _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text save_ save_topol_link.multiplicity _definition.id '_topol_link.multiplicity' _definition.update 2021-10-08 _description.text ; The number of these links in the unit cell. ; _name.category_id topol_link _name.object_id multiplicity _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_link.node_id_1 _definition.id '_topol_link.node_id_1' _definition.update 2021-10-11 _description.text ; The identifier of the first node associated with a link. This must match a _topol_node.id value. ; _name.category_id topol_link _name.object_id node_id_1 _name.linked_item_id '_topol_node.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_link.node_id_2 _definition.id '_topol_link.node_id_2' _definition.update 2021-10-11 _description.text ; The identifier of the second node associated with a link. This must match a _topol_node.id value. ; _name.category_id topol_link _name.object_id node_id_2 _name.linked_item_id '_topol_node.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_link.order _definition.id '_topol_link.order' _definition.update 2021-10-08 _description.text ; The number of electron pairs participating in the bond described by _topol_link.type. ; _name.category_id topol_link _name.object_id order _type.purpose Number _type.source Assigned _type.container Single _type.contents Real _units.code none save_ save_topol_link.special_details _definition.id '_topol_link.special_details' _definition.update 2021-09-14 _description.text ; Information about the link that is not expressed using other data items, for example, bond subtypes and explanations of links with _topol_link.type of 'sb'. ; _name.category_id topol_link _name.object_id special_details _type.purpose Describe _type.source Assigned _type.container Single _type.contents Text save_ save_topol_link.symop_id_1 _definition.id '_topol_link.symop_id_1' _definition.update 2021-11-16 _description.text ; The identifier of the symmetry operation that is to be applied to the coordinates of the node given by _topol_link.node_id_1 before addition of the translations given by _topol_link.translation_1. The value must match a value of _space_group_symop.id. If this item is omitted or assigned to '.', the identity operation is assumed. ; _name.category_id topol_link _name.object_id symop_id_1 _name.linked_item_id '_space_group_symop.id' _type.purpose Link _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1:192 _enumeration.default 1 _units.code none save_ save_topol_link.symop_id_2 _definition.id '_topol_link.symop_id_2' _definition.update 2021-11-16 _description.text ; The identifier of the symmetry operation that is to be applied to the coordinates of the node given by _topol_link.node_id_2 before addition of the translations given by _topol_link.translation_2. The value must match a value of _space_group_symop.id. If this item is omitted or assigned to '.', the identity operation is assumed. ; _name.category_id topol_link _name.object_id symop_id_2 _name.linked_item_id '_space_group_symop.id' _type.purpose Link _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1:192 _enumeration.default 1 _units.code none save_ save_topol_link.translation_1 _definition.id '_topol_link.translation_1' _definition.update 2021-10-21 _description.text ; The lattice translation vector that must be added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_1 to generate the node used in calculating the link. For example, if the symmetry operation referred to by _topol_link.symop_id_1 is (x-1/2,y+1/2,z), _topol_link.translation_1 is [0,-1,0] and the original position is (0.2,0.7,1.0) in fractional coordinates, then the resultant position is (-0.3,0.2,1.0). Alternatively, _topol_link.translation_1_x, _topol_link.translation_1_y and _topol_link.translation_1_z data items may be used to describe separate components of the vector. ; _name.category_id topol_link _name.object_id translation_1 _type.purpose Number _type.source Derived _type.container Matrix _type.dimension '[3]' _type.contents Integer _enumeration.default [0 0 0] _units.code none save_ save_topol_link.translation_1_x _definition.id '_topol_link.translation_1_x' _definition.update 2021-10-21 _description.text ; The x component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_1 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_1_x _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.translation_1_y _definition.id '_topol_link.translation_1_y' _definition.update 2021-10-21 _description.text ; The y component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_1 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_1_y _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.translation_1_z _definition.id '_topol_link.translation_1_z' _definition.update 2021-10-21 _description.text ; The z component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_1 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_1_z _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.translation_2 _definition.id '_topol_link.translation_2' _definition.update 2021-10-21 _description.text ; The lattice translation vector that must be added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_2 to generate the node used in calculating the link. For example, if the symmetry operation referred to by _topol_link.symop_id_2 is (x-1/2,y+1/2,z), _topol_link.translation_2 is [0,-1,0] and the original position is (0.2,0.7,1.0) in fractional coordinates, then the resultant position is (-0.3,0.2,1.0). Alternatively, _topol_link.translation_2_x, _topol_link.translation_2_y and _topol_link.translation_2_z data items may be used to describe separate components of the vector. ; _name.category_id topol_link _name.object_id translation_2 _type.purpose Number _type.source Derived _type.container Matrix _type.dimension '[3]' _type.contents Integer _enumeration.default [0 0 0] _units.code none save_ save_topol_link.translation_2_x _definition.id '_topol_link.translation_2_x' _definition.update 2021-10-21 _description.text ; The x component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_2 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_2_x _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.translation_2_y _definition.id '_topol_link.translation_2_y' _definition.update 2021-10-21 _description.text ; The y component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_2 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_2_y _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.translation_2_z _definition.id '_topol_link.translation_2_z' _definition.update 2021-10-21 _description.text ; The z component of the vector of lattice translations that is added to the coordinates after application of the symmetry operation given by _topol_link.symop_id_2 to generate the node used in calculating the link. ; _name.category_id topol_link _name.object_id translation_2_z _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.default 0 _units.code none save_ save_topol_link.type _definition.id '_topol_link.type' _definition.update 2021-09-17 _description.text ; The chemical bond type associated with the connection between the two sites. If no bond exists, use an undelimited period character. If the bond type is unknown, use '?' or leave out the data item. The number of electron pairs participating in the bond can be indicated using _topol_link.order. The value 'sb' or 'gl' should be used for any case where the connection is not a bond between two atoms. ; _name.category_id topol_link _name.object_id type _type.purpose State _type.source Assigned _type.container Single _type.contents Code loop_ _enumeration_set.state _enumeration_set.detail ar 'aromatic bond' v 'valence bond' pi 'pi bond' hb 'hydrogen bond' vw 'van der Waals contact' sb 'special bond type described in _topol_link.special_details' gl 'generic link' save_ save_topol_link.voronoi_solid_angle _definition.id '_topol_link.Voronoi_solid_angle' _definition.update 2021-09-15 _description.text ; The solid angle fraction of the interatomic contact A-X, which is the percentage of the sphere of unit radius cut by the pyramid with the basal face of the Voronoi polyhedron of A or X, the two atoms defining the contact. The total solid angle (the whole sphere) is equal to 100. The face used is that corresponding to the A-X interatomic contact. ; _name.category_id topol_link _name.object_id Voronoi_solid_angle _type.purpose Measurand _type.source Derived _type.container Single _type.contents Real _enumeration.range 0:50 _units.code none save_ save_topol_link.voronoi_solid_angle_su _definition.id '_topol_link.Voronoi_solid_angle_su' _definition.update 2023-07-11 _description.text ; Standard uncertainty of _topol_link.Voronoi_solid_angle. ; _name.category_id topol_link _name.object_id Voronoi_solid_angle_su _name.linked_item_id '_topol_link.Voronoi_solid_angle' _type.purpose SU _type.source Related _type.container Single _type.contents Real _units.code none save_ save_TOPOL_NET _definition.id TOPOL_NET _definition.scope Category _definition.class Loop _definition.update 2024-05-20 _description.text ; The TOPOL_NET category describes an atomic network or underlying net. Reference: Delgado-Friedrichs, O., Foster, M. D., O'Keeffe, M., Proserpio, D. M., Treacy, M. M. J. & Yaghi, O. M. (2005). What do we know about three-periodic nets? J. Solid State Chem. 178, 2533-2554, DOI:10.1016/j.jssc.2005.06.037. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_NET _category_key.name '_topol_net.id' save_ save_topol_net.genus _definition.id '_topol_net.genus' _definition.update 2021-10-08 _description.text ; The genus of the underlying net, defined as the cyclomatic number of its own quotient graph: g = 1 + e - v, where e and v are the number of edges and vertices in the quotient graph. The quotient graph is a finite graph that contains all of the information of the periodic net: the vertices of the graph are the vertices of a translational repeat unit and the edges are all the edges of the repeat unit. Reference: Delgado-Friedrichs, O. & O'Keeffe, M. (2005). Crystal nets as graphs: Terminology and definitions. J. Solid State Chem. 178, 2480-2485, DOI:10.1016/j.jssc.2005.06.011. ; _name.category_id topol_net _name.object_id genus _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.range 0: _units.code none save_ save_topol_net.id _definition.id '_topol_net.id' _definition.update 2021-10-08 _description.text ; The unique integer identifier for this net, generally a serial number starting with 1. ; _name.category_id topol_net _name.object_id id _type.purpose Key _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_net.label _definition.id '_topol_net.label' _definition.update 2021-09-05 _description.text ; An optional not-necessarily unique label for this net. ; _name.category_id topol_net _name.object_id label _type.purpose Key _type.source Assigned _type.container Single _type.contents Text save_ save_topol_net.overall_topology_epinet _definition.id '_topol_net.overall_topology_EPINET' _definition.update 2018-01-30 _description.text ; The identifier for the overall topology as listed in the EPINET database at https://epinet.anu.edu.au. ; _name.category_id topol_net _name.object_id overall_topology_EPINET _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text _description_example.case sqc6 save_ save_topol_net.overall_topology_iza _definition.id '_topol_net.overall_topology_IZA' _definition.update 2018-01-30 _description.text ; The three-letter symbol for a Zeolite Framework Types that has been approved by the Structure Commission of the International Zeolite Association (IZA-SC). Reference: Database for Zeolite Structures https://www.iza-structure.org/databases/ ; _name.category_id topol_net _name.object_id overall_topology_IZA _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text _description_example.case FAU save_ save_topol_net.overall_topology_rcsr _definition.id '_topol_net.overall_topology_RCSR' _definition.update 2021-09-15 _description.text ; The overall topology symbol according to the RCSR nomenclature described by O'Keeffe et al. (2008). Reference: O'Keeffe, M., Peskov, M. A., Ramsden, S. J. & Yaghi, O. M. (2008). The Reticular Chemistry Structure Resource (RCSR) database of, and symbols for, crystal nets. Acc. Chem. Res. 41, 1782-1789, DOI:10.1021/ar800124u. ; _name.category_id topol_net _name.object_id overall_topology_RCSR _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text _description_example.case dia save_ save_topol_net.overall_topology_sp _definition.id '_topol_net.overall_topology_SP' _definition.update 2021-09-15 _description.text ; The overall topology symbol according to the nomenclature of Fischer for sphere packings described by Koch et al. (2006). Reference: Koch, E., Fischer, W. & Sowa, H. (2006). Interpenetration of homogeneous sphere packings and of two-periodic layers of spheres. Acta Cryst. A62, 152-167, DOI:10.1107/S010876730600362X. ; _name.category_id topol_net _name.object_id overall_topology_SP _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text _description_example.case 4/6/c1 save_ save_topol_net.overall_topology_topos _definition.id '_topol_net.overall_topology_TOPOS' _definition.update 2021-09-15 _description.text ; The overall topology symbol according to the TOPOS nomenclature. TOPOS symbols NDn are interpreted as follows: N is a sequence of degrees (coordination numbers) of all independent nodes; D is one of the letters C (chain), L (layer) or T (three-periodic) designating the dimensionality of the net; and n enumerates non-isomorphic nets with a given ND sequence. For finite (molecular) graphs the symbols NMk-n are used, where k is the number of vertices (atoms) in the graph. Reference: Aman, F., Asiri, A. M., Siddiqui, W. A., Arshad, M. N., Ashraf, A., Zakharov, N. S. & Blatov, V. A. (2014). Multilevel topological description of molecular packings in 1,2-benzothiazines. Cryst. Eng. Comm, 16, 1963-1970, DOI:10.1039/C3CE42218F. ; _name.category_id topol_net _name.object_id overall_topology_TOPOS _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text _description_example.case 3,3,4T3 _description_example.detail ; The third non-isomorphic three-periodic trinodal net with two 3-coordinated and one 4-coordinated independent nodes. ; save_ save_topol_net.period _definition.id '_topol_net.period' _definition.update 2021-09-17 _description.text ; The periodicity of the underlying net. ; _name.category_id topol_net _name.object_id period _type.purpose State _type.source Derived _type.container Single _type.contents Code loop_ _enumeration_set.state _enumeration_set.detail 0 '0-periodic (finite)' 1 '1-periodic (chain)' 2 '2-periodic (layer)' 3 '3-periodic (framework)' save_ save_topol_net.special_details _definition.id '_topol_net.special_details' _definition.update 2021-05-03 _description.text ; An arbitrary description of the net. ; _name.category_id topol_net _name.object_id special_details _type.purpose Describe _type.source Assigned _type.container Single _type.contents Text save_ save_topol_net.td10 _definition.id '_topol_net.td10' _definition.update 2021-10-08 _description.text ; The topological density TD10 of the underlying net. This is the cumulative sum of the first ten shells of topological neighbours including the central atom. For structures with more than one kind of vertex in the asymmetric unit the value given is a weighted average over the vertices. ; _name.category_id topol_net _name.object_id td10 _type.purpose Number _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 0: _units.code none save_ save_topol_net.total_point_symbol _definition.id '_topol_net.total_point_symbol' _definition.update 2018-01-30 _description.text ; The total point symbol of the underlying net. This value summarizes all the point symbols for the non-equivalent nodes with their stoichiometric coefficients. ; _name.category_id topol_net _name.object_id total_point_symbol _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text loop_ _description_example.case _description_example.detail '{6^6}' 'point symbol for diamond' '{4.6^2}2{4^2.6^10.8^3}' '3,6-coordinated underlying net of TiO2' save_ save_topol_net.z_number _definition.id '_topol_net.z_number' _definition.update 2021-10-08 _description.text ; For 3-periodic nets, the number of symmetry-equivalent nets of this kind in the crystal structure. ; _name.category_id topol_net _name.object_id z_number _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_TOPOL_NODE _definition.id TOPOL_NODE _definition.scope Category _definition.class Loop _definition.update 2024-05-20 _description.text ; The TOPOL_NODE category, along with TOPOL_ATOM, describes the topological properties, position and chemical composition of the nodes of the underlying net. Data items _topol_node.fract_x, _topol_node.fract_y and _topol_node.fract_z must be present only if the node's position cannot be derived from other data items in TOPOL_NODE or TOPOL_ATOM. Fractional coordinates can be given in other cases, but are to be considered secondary to calculations based on explicit or default symmetry transformations, present only for convenience. In the case of multiple nets, _topol_node.net_id is also required. Reference: Blatov, V. A., O'Keeffe, M. & Proserpio, D. M. (2010). Vertex-, face-, point-, Schl\"afli-, and Delaney-symbols in nets, polyhedra and tilings: recommended terminology. Cryst. Eng. Comm. 12, 44-48, DOI:10.1039/B910671E. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_NODE _category_key.name '_topol_node.id' save_ save_topol_node.coordination_sequence _definition.id '_topol_node.coordination_sequence' _definition.update 2023-11-13 _description.text ; The coordination sequence is a sequence of numbers counting the atoms in the 1st, 2nd, 3rd etc. coordination shells of any given node in the net. In other words, the kth entry in the list is the number of vertices linked to the node by a path of exactly k steps. It is usually listed up to k=10. Alternatively, the _topol_node.coordination_sequence_plain data item can be used to represent the coordination sequence as plain text. ; _name.category_id topol_node _name.object_id coordination_sequence _type.purpose Number _type.source Derived _type.container List _type.dimension '[]' _type.contents Integer _units.code none _description_example.case [4 12 24 42 64 92 124 162 204 252] _description_example.detail 'The diamond coordination sequence.' save_ save_topol_node.coordination_sequence_plain _definition.id '_topol_node.coordination_sequence_plain' _definition.update 2021-07-28 _description.text ; A CIF 1 compatible alternative representation of the coordination sequence as plain text, as a quoted string of white-space-separated numbers. ; _name.category_id topol_node _name.object_id coordination_sequence_plain _type.purpose Encode _type.source Derived _type.container Single _type.contents Text _description_example.case '4 12 24 42 64 92 124 162 204 252' _description_example.detail 'The diamond coordination sequence.' save_ save_topol_node.extended_point_symbol _definition.id '_topol_node.extended_point_symbol' _definition.update 2021-10-20 _description.text ; The extended point symbol of an N-coordinated node lists all shortest circuits for each of the N(N-1)/2 angles (pairs of edges) incident to the node. It is written as A(a).B(b)... where A, B, ... designate sizes of circuits, which meet at angles A, B, ..., and a, b, ... designate numbers of these circuits. It is sorted so shortest circuits come first. For a 4-coordinated node connected to nodes w,x,y,z, the angles are ordered in opposite pairs; wx,yz; wy,xz; wz,xy (written in lexicographic order smallest numbers first). ; _name.category_id topol_node _name.object_id extended_point_symbol _type.purpose Encode _type.source Derived _type.container Single _type.contents Text loop_ _description_example.case _description_example.detail 6(2).6(2).6(2).6(2).6(2).6(2) 'extended symbol for a vertex in the diamond structure' 4.6(2).4.8(3).6(2).6(2) 'extended symbol for one vertex of feldspar net' 7(2).9(2).7(3).7(3).7(3).7(3) 'extended symbol for the vertex of qzd net' 4.4.4.4.6(3).6(3).6(5).6(5).6(5).6(5) 'extended symbol for the vertex of 5-c sqp net' save_ save_topol_node.fract_x _definition.id '_topol_node.fract_x' _definition.update 2021-10-11 _description.text ; The fractional x coordinate of this node. If present, this data item indicates the final, symmetry-transformed x coordinate of the node. This data item is only necessary if this node is not referenced by _topol_atom.node_id. ; _name.category_id topol_node _name.object_id fract_x _type.purpose Measurand _type.source Assigned _type.container Single _type.contents Real _units.code none save_ save_topol_node.fract_x_su _definition.id '_topol_node.fract_x_su' _definition.update 2023-07-11 _description.text ; Standard uncertainty of _topol_node.fract_x. ; _name.category_id topol_node _name.object_id fract_x_su _name.linked_item_id '_topol_node.fract_x' _type.purpose SU _type.source Related _type.container Single _type.contents Real _units.code none save_ save_topol_node.fract_y _definition.id '_topol_node.fract_y' _definition.update 2021-10-11 _description.text ; The fractional y coordinate of this node. If present, this data item indicates the final, symmetry-transformed y coordinate of the node. This data item is only necessary if this node is not referenced by _topol_atom.node_id. ; _name.category_id topol_node _name.object_id fract_y _type.purpose Measurand _type.source Assigned _type.container Single _type.contents Real _units.code none save_ save_topol_node.fract_y_su _definition.id '_topol_node.fract_y_su' _definition.update 2023-07-11 _description.text ; Standard uncertainty of _topol_node.fract_y. ; _name.category_id topol_node _name.object_id fract_y_su _name.linked_item_id '_topol_node.fract_y' _type.purpose SU _type.source Related _type.container Single _type.contents Real _units.code none save_ save_topol_node.fract_z _definition.id '_topol_node.fract_z' _definition.update 2021-10-11 _description.text ; The fractional z coordinate of this node. If present, this data item indicates the final, symmetry-transformed z coordinate of the node. This data item is only necessary if this node is not referenced by _topol_atom.node_id. ; _name.category_id topol_node _name.object_id fract_z _type.purpose Measurand _type.source Assigned _type.container Single _type.contents Real _units.code none save_ save_topol_node.fract_z_su _definition.id '_topol_node.fract_z_su' _definition.update 2023-07-11 _description.text ; Standard uncertainty of _topol_node.fract_z. ; _name.category_id topol_node _name.object_id fract_z_su _name.linked_item_id '_topol_node.fract_z' _type.purpose SU _type.source Related _type.container Single _type.contents Real _units.code none save_ save_topol_node.id _definition.id '_topol_node.id' _definition.update 2021-10-08 _description.text ; The identifier of the node. ; _name.category_id topol_node _name.object_id id _type.purpose Key _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_node.label _definition.id '_topol_node.label' _definition.update 2021-08-29 _description.text ; An optional not-necessarily unique label for this node. ; _name.category_id topol_node _name.object_id label _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text save_ save_topol_node.net_id _definition.id '_topol_node.net_id' _definition.update 2021-10-08 _description.text ; The unique identifier of the net to which this node belongs. ; _name.category_id topol_node _name.object_id net_id _name.linked_item_id '_topol_net.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_node.point_symbol _definition.id '_topol_node.point_symbol' _definition.update 2018-02-06 _description.text ; The (short) point symbol of the node. This lists the number and size of the shortest closed chains of connected nodes (circuits) starting from any non-equivalent node in the net. For an N-coordinated node there are N(N-1)/2 circuits. ; _name.category_id topol_node _name.object_id point_symbol _type.purpose Encode _type.source Derived _type.container Single _type.contents Text loop_ _description_example.case _description_example.detail 6^6 'point symbol for a diamond vertex' 4^2.6^3.8 'point symbol for a feldspar 4-coordinated vertex' 7^5.9 'point symbol for the vertex of 4-c qzd net' 4^4.6^6 'point symbol for the vertex of 5-c sqp net' save_ save_topol_node.symmetry_multiplicity _definition.id '_topol_node.symmetry_multiplicity' _definition.update 2021-10-08 _description.text ; The number of different sites that are generated by the application of the space-group symmetry to the coordinates given for this site. It is equal to the multiplicity given for this Wyckoff site in International Tables for Crystallography Vol. A (2002). ; _name.category_id topol_node _name.object_id symmetry_multiplicity _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1:192 _units.code none save_ save_topol_node.vertex_symbol _definition.id '_topol_node.vertex_symbol' _definition.update 2018-02-06 _description.text ; The vertex symbol of a node provides similar information to the _topol_node.extended_point_symbol, but only for rings, which are circuits that contain no shortcuts, that is, are not the sum of two smaller circuits. There may be circuits that cannot be rings. If there are no rings meeting at a particular angle of the node, the symbol '*' is used instead of the 'A^a' symbol. It is sorted so shortest rings come first. For 4-coordinated nodes only, the angles are grouped in opposite pairs; ab,cd and ac,bd and ad,bc (written in lexicographic order smallest numbers first). In the ordering the symbol '*' is equivalent to zero. ; _name.category_id topol_node _name.object_id vertex_symbol _type.purpose Encode _type.source Derived _type.container Single _type.contents Text loop_ _description_example.case _description_example.detail 6(2).6(2).6(2).6(2).6(2).6(2) 'vertex symbol for diamond' 4.6(2).4.8.6.6(2) 'vertex symbol for one vertex of feldspar net' 7(2).*.7(3).7(3).7(3).7(3) 'vertex symbol for the vertex of qzd net' 4.4.4.4.6.6.6(5).6(5).6(5).6(5) 'vertex symbol for the vertex of 5-c sqp net' save_ save_topol_node.wyckoff_symbol _definition.id '_topol_node.Wyckoff_symbol' _definition.update 2021-09-24 _description.text ; The Wyckoff symbol (letter) as listed in the space-group section of International Tables for Crystallography, Vol. A (1987). ; _name.category_id topol_node _name.object_id Wyckoff_symbol _type.purpose State _type.source Assigned _type.container Single _type.contents Text _import.get [{'file':templ_enum.cif 'save':Wyckoff_letter}] save_ save_TOPOL_TILING _definition.id TOPOL_TILING _definition.scope Category _definition.class Loop _definition.update 2024-05-20 _description.text ; The TOPOL_TILING category describes the natural tiling corresponding to the underlying net. A tiling is a partition of crystal space using generalized polyhedra, and a natural tiling is one for which tiles are the smallest possible that conserve the full symmetry of the net and for which the faces are all locally strong rings. This means that there is no single largest face (face with the largest number of vertices) as such a face will be the sum of the other smaller faces. The tile signature contains the sizes of the tile faces and the number of faces of a given size in the tile. Reference: Blatov, V. A., Delgado-Friedrichs, O., O'Keeffe M. & Proserpio D. M. (2007). Three-periodic nets and tilings: natural tilings for nets. Acta Cryst. A63, 418-425, DOI:10.1107/S0108767307038287. ; _name.category_id CIF_TOPO_HEAD _name.object_id TOPOL_TILING _category_key.name '_topol_tiling.id' save_ save_topol_tiling.d_size _definition.id '_topol_tiling.d_size' _definition.update 2021-10-08 _description.text ; The number of distinct (not symmetry-related) chambers in the tiling as expressed by the Delaney-Dress symbol or just D-symbol, as a measure of the complexity of the tiling (D-size). Reference: Blatov, V. A., O'Keeffe, M. & Proserpio, D. M. (2010). Vertex-, face-, point-, Schl\"afli-, and Delaney-symbols in nets, polyhedra and tilings: recommended terminology. Cryst. Eng. Comm. 12, 44-48, DOI:10.1039/B910671E. ; _name.category_id topol_tiling _name.object_id d_size _type.purpose Number _type.source Derived _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.dual _definition.id '_topol_tiling.dual' _definition.update 2018-01-30 _description.text ; The overall topology symbol of the dual net, which corresponds to the net of the dual of the natural tiling. ; _name.category_id topol_tiling _name.object_id dual _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text save_ save_topol_tiling.edges _definition.id '_topol_tiling.edges' _definition.update 2021-10-08 _description.text ; The number of independent tile edges in the natural tiling. ; _name.category_id topol_tiling _name.object_id edges _type.purpose Number _type.source Recorded _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.faces _definition.id '_topol_tiling.faces' _definition.update 2021-10-08 _description.text ; The number of independent tile faces in the natural tiling. ; _name.category_id topol_tiling _name.object_id faces _type.purpose Number _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.id _definition.id '_topol_tiling.id' _definition.update 2021-10-08 _description.text ; The unique identifier of the tiling. ; _name.category_id topol_tiling _name.object_id id _type.purpose Key _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.net_id _definition.id '_topol_tiling.net_id' _definition.update 2021-10-08 _description.text ; The identifier of the net that carries this tiling. ; _name.category_id topol_tiling _name.object_id net_id _name.linked_item_id '_topol_net.id' _type.purpose Link _type.source Related _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.signature _definition.id '_topol_tiling.signature' _definition.update 2021-10-17 _description.text ; The tiling signature, written in the form n[A^a.B^b...]+m[C^c.D^d...]+..., where square brackets envelop tile symbols, n,m,... are stoichiometric coefficients, A, B, C, D, ... are sizes of tile faces, and a,b,c,d, ... are numbers of the faces of a given size in the tile. ; _name.category_id topol_tiling _name.object_id signature _type.purpose Encode _type.source Assigned _type.container Single _type.contents Text loop_ _description_example.case _description_example.detail '[6^4]' 'natural tiling for diamond' '3[4^6]+[4^6.6^8]+[4^12.6^8.8^6]' 'natural tiling for zeolite LTA' save_ save_topol_tiling.tiles _definition.id '_topol_tiling.tiles' _definition.update 2021-10-08 _description.text ; The number of independent tiles in the natural tiling. ; _name.category_id topol_tiling _name.object_id tiles _type.purpose Number _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ save_topol_tiling.vertices _definition.id '_topol_tiling.vertices' _definition.update 2021-10-08 _description.text ; The number of independent tile vertices in the natural tiling. ; _name.category_id topol_tiling _name.object_id vertices _type.purpose Number _type.source Assigned _type.container Single _type.contents Integer _enumeration.range 1: _units.code none save_ loop_ _dictionary_author.id _dictionary_author.name _dictionary_author.id_orcid _dictionary_author.email 1 'Blatov, Vladislav A.' 0000-0002-4048-7218 blatov@topospro.com 2 'Proserpio, Davide M.' 0000-0001-6597-9406 davide.proserpio@unimi.it 3 'Hanson, Robert M.' 0000-0001-5411-2356 hansonr@stolaf.edu loop_ _dictionary_audit.version _dictionary_audit.date _dictionary_audit.revision 0.3.0 2018-02-23 ; Changed topol_bond to topol_link using node labels instead of atom labels. Added coordinates, multiplicity and Wyckoff symbol to topol_node. Added in type and linking information. (J Hester.) ; 0.4.0 2018-02-27 ; Added long-form examples provided by V Blatov. Version for review. ; 0.5.0 2018-04-05 ; Added InChI, SMILES structural formulas and replaced symops with explicit symmetry operator ids and vector translations. Clarified bond types. ; 0.9.0 2018-05-28 ; Version for final approval after review. Removed most tags from TOPOL_ENTANGL and subcategories. ; 0.9.1 2019-07-17 ; Fixed a few typos. (B. McMahon) ; 0.9.2 2021-05-04 ; Replaced TOPOL_REPRES category by TOPOL_NET; all TOPOL_REPRES categories are moved to TOPOL category; Examples 4 and 5 added ; 0.9.3 2021-07-28 ; Added CIF-1.0 equivalents for _topol_link.site_symmetry_translation_1, _topol_link.site_symmetry_translation_2, and _topol_node.coordination_sequence (B. Hanson and V. Blatov) ; 0.9.4 2021-10-13 ; Added TOPOL_ATOM subcategory, _topol_link.node_id_1, _topol_link.node_id_2, _topol_link.structural_formula_InChI, _topol_link.structural_formula_SMILES, and _topol_node.id items Removed TOPOL_EDGE subcategory Renamed _topol_link.site_symmetry_symop_1(2) to _topol_link.symop_1(2) _topol_link.site_symmetry_translation_1(2) to _topol_link.translation_1(2) _topol_node.site_symmetry_symop_1(2) to _topol_node.symop_1(2) _topol_node.site_symmetry_translation_1(2) to _topol_node.translation_1(2) (V. Blatov) editorial adjustments, formatting (B. Hanson) Corrected the definitions of the _topol_node.fract_x, _topol_node.fract_y and _topol_node.fract_z data items. (A. Vaitkus) added _topol_net.label changing "dataname" to "tag" as per VOl. G 2.2.3.3.4 and 2.2.2(2) changing "field" to "data value" or "value" as per Vol. G 2.2.3.1.5 and 2.2.3.1.7 changing various terms to "loop" as per Vol. g 2.2.2(4) and 2.2.3.1.7 updated Example 5 for net.id being a number temporarily replaced examples 1-4 with TODO as a reminder to get these updated changing ATOM_SITE.label to _atom_site.label changed "block" or "section" to "data items" or "category" changed elemental_symbol to element_symbol added _topol_link.net_id updated examples 2-4 for _chemical_formula_sum and ATOM_TYPE (B. Hanson) added new tags (V. Blatov) _topol_link.label _topol_net.overall_topology_IZA _topol_tiling.id _topol_tiling.net_id _topol_tiling_tile.tiling_id added Example 5; renamed old Example 5 to Example 6 (V. Blatov) switched _topol_*.id to Integer/enum 1: (B. Hanson) Renamed data items _topol_atom.symop, _topol_link.symop_1 and _topol_link.symop_2 to _topol_atom.symop_id, _topol_link.symop_id_1 and _topol_link.symop_id_2 respectively. Adjusted multiple examples and data item definitions to reflect this change. (A. Vaitkus) Added an enumeration range of 0: to the _topol_tiling_tile.count and _topol_tiling_faces.count data items. (A. Vaitkus) Renamed data item _topol_net.overall_topology_rscr to _topol_net.overall_topology_RCSR. (A. Vaitkus) Updated several descriptions by replacing the term 'tag' with 'data item' and correcting data item references. (A. Vaitkus) Added _topol_node.symop_id and _topol_node.translation* (B. Hanson) issue #37 Removed method for _topol_node.fract_* (B. Hanson) Added DOIs to multiple references. (A. Vaitkus) Renamed _topol_tiling.Dsize to _topol_tiling.d_size and _topol_link.Voronoi_solidangle to _topol_link.Voronoi_solid_angle. (A. Vaitkus) Added enumeration range of 1: to the _topol_tiling.d_size data item. Redefined the _topol_net.period data item as an enumeration set. (A. Vaitkus) Restricted the _topol_node.Wyckoff_symbol data item values to a set of case-sensitive enumeration values. (A. Vaitkus) Added the _dictionary.uri attribute. (A. Vaitkus) Added the 'none' measurement units to the definitions of multiple data items. (A. Vaitkus) Added multiple standard uncertainty (SU) data items. (A. Vaitkus) Added the _dictionary.namespace attribute and changed the DDL conformance version from 3.13.1 to 4.1.0. Declared the TOPOL_TILING category as looped. (A. Vaitkus) Removed the _topol_link.atom_label_1, _topol_link.atom_label_2, _topol_link.chemical_formula_IUPAC, _topol_link.chemical_formula_moiety, _topol_link.chemical_formula_sum, _topol_link.structural_formula_InChI, _topol_link.structural_formula_SMILES, _topol_node.atom_label, _topol_node.chemical_formula_IUPAC, _topol_node.chemical_formula_moiety, _topol_node.chemical_formula_sum, _topol_node.structural_formula_InChI, _topol_node.structural_formula_SMILES, _topol_node.symop_id, _topol_node.translation, _topol_node.translation_x, _topol_node.translation_y and _topol_node.translation_z data items. Adjusted related definitions accordingly. (A. Vaitkus) TODO: adjust _category_key.name to allow for optional id in all TOPOL_* categories with _topol_*.id, as in CHEMICAL_CONN_BOND ; 0.9.5 2021-10-21 ; Removed _topol_net.occurrence_total (B. Hanson) Removed TOPOL_OCCURRENCE (B. Hanson) Removed TOPOL_TILING_FACES and TOPOL_TILING_TILE (B. Hanson) Added _topol_link.type 'gl' (generic link) (B. Hanson) Added machine-readable default values to the definitions of multiple data items. (A. Vaitkus) NOTE: _topol_net.total_point_symbol should display { } correctly in {4.6^2}2{4^2.6^10.8^3} NOTE: all ^ should be that mark in the dictionary examples. ; 0.9.6 2024-02-13 ; Updated the _topol_atom.atom_label, _topol_atom.symop_id, _topol_link.symop_id_1 and _topol_link.symop_id_2 data items to be compatible with the data items that they are linked to. (A. Vaitkus) ; 0.9.7 2026-05-01 ; # Please update the date above and describe the change below until # ready for the next release. Changed the _type.source attribute of all SU data items to 'Related'. (A. Vaitkus) Removed _topol_link.net_id and _topol_net.overall_topology in line with proof corrections of draft chapters 3.9 and 4.9 by Blatov et al. (B. McMahon) Replaced example placeholders in TOPOL category by _import.get of associated topo_examples.cif file. (B. McMahon) Made various small style and punctuation changes to prepare for publication in International Tables Volume G. (B. McMahon) Updated the CIF_CORE dictionary import statement with the new Head category name. (A. Vaitkus) Renamed the dictionary from 'TOPOLOGY_CIF' to 'CIF_TOPO'. Renamed the head category from 'TOPOLOGY' to 'CIF_TOPO_HEAD'. (A. Vaitkus) Renamed dictionary file from "Topology.dic" to "cif_topo.dic". (A. Vaitkus) More small editorial/style changes. (B. McMahon) Added DICTIONARY_AUTHOR loop. (B. McMahon) Added _enumeration.range to _topol_net.td10, _topol_net.genus, _topol_tiling.faces, _topol_tiling.edges, _topol_tiling.tiles, _topol_tiling.vertices. (B. McMahon) ;