XML::Smart::DTD(3pm) User Contributed Perl Documentation XML::Smart::DTD(3pm)NAME
XML::Smart::DTD - DTD parser for XML::Smart.
DESCRIPTION
This will parse DTD and provides methods to access the information stored in the DTD.
USAGE
use XML::Smart::DTD ;
my $dtd = XML::Smart::DTD->new('some.dtd') ;
if ( $dtd->child_exists('tag1','subtag1') ) {
...
}
use Data::Dumper ;
print Dumper( $dtd->tree ) ;
newMETHODS
attr_exists ( TAG , ATTR )
Return TRUE if the attribute exists in the element TAG.
child_exists ( TAG , CHILD )
Return TRUE if the child exists in the element TAG.
elem_exists ( TAG )
Return TRUE if the element TAG exists.
error
Return the error list.
get_attr_def ( TAG , ATTR )
Return the default value of an attribute
get_attr_type ( TAG , ATTR )
Return the attribute type.
get_attr_values ( TAG , ATTR )
Return the defined values of an attribute.
get_attrs ( TAG )
Return the attribute list of a element.
get_attrs_req ( TAG )
Return the required attribute list of a element.
get_childs ( TAG )
Return the child list of an element.
get_childs_req ( TAG )
Return the required child list of an element.
get_elem_opt ( TAG )
Return the occurrence option of an element:
! REQUIRED AND ONLY ONE MATCH
+ 1 or more
* 0 or more
? 0 or 1
get_elem_child_opt ( TAG , CHILD )
Same of get_elem_opt() but this element as a child of an element.
is_attr_fix ( TAG , ATTR )
Return TRUE if an attribute is FIXED.
is_attr_req ( TAG , ATTR )
Return TRUE if an attribute is REQUIRED.
is_elem_any ( TAG )
Return TRUE if an element is ANY.
is_elem_child_multi ( TAG , CHILD )
Return TRUE if an element can have multiple occurrences as a child of TAG.
is_elem_child_opt ( TAG , CHILD )
Return TRUE if an element is optional as a child of TAG.
is_elem_child_req ( TAG , CHILD )
Return TRUE if an element is optional as a child of TAG.
is_elem_child_uniq ( TAG , CHILD )
Return TRUE if an element is required and unique as a child of TAG.
is_elem_pcdata ( TAG )
Return TRUE if an element is PCDATA (have content).
is_elem_empty ( TAG )
Return TRUE if an element is EMPTY (doesn't have attributes, content or children).
is_elem_multi ( TAG )
Return TRUE if an element can have multiple occurrences globally.
is_elem_opt ( TAG )
Return TRUE if an element is optional globally.
is_elem_parent ( TAG , @PARENTS )
Return TRUE if the list of @PARENTS can be parent of element TAG.
is_elem_req
Return TRUE if an element is required globally.
is_elem_uniq
Return TRUE if an element is unique and required globally.
root
Return the root name of the DTD.
tree
Return the HASH tree of the DTD.
SEE ALSO
XML::Smart, XML::DTDParser.
AUTHOR
Graciliano M. P. <gm@virtuasites.com.br>
I will appreciate any type of feedback (include your opinions and/or suggestions). ;-P
THANKS
Thanks to Jenda@Krynicky.cz http://Jenda.Krynicky.cz that is the author of XML::DTDParser.
COPYRIGHT
The DTD parser was based on XML-DTDParser-1.7 by Jenda@Krynicky.cz http://Jenda.Krynicky.cz
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.10.1 2004-09-01 XML::Smart::DTD(3pm)
Check Out this Related Man Page
FMCS(1) User Commands FMCS(1)NAME
fmcs - fmcs
DESCRIPTION
usage: fmcs [-h] [--maximize {atoms,bonds}] [--min-num-atoms INT]
[--compare {topology,elements,types}] [--atom-compare {any,elements,isotopes}] [--bond-compare {any,bondtypes}] [--atom-class-tag
TAG] [--ring-matches-ring-only] [--complete-rings-only] [--select SELECT] [--timeout SECONDS] [--output FILENAME] [--output-format
{smarts,fragment-smiles,fragment-sdf,complete-sdf}] [--output-all] [--save-atom-class-tag TAG] [--save-counts-tag TAG]
[--save-atom-indices-tag TAG] [--save-smarts-tag TAG] [--save-smiles-tag TAG] [--times] [-v] [--version] filename
Find the maximum common substructure of a set of structures
positional arguments:
filename
SDF or SMILES file
optional arguments:
-h, --help
show this help message and exit
--maximize {atoms,bonds}
Maximize the number of 'atoms' or 'bonds' in the MCS. (Default: bonds)
--min-num-atoms INT
Minimimum number of atoms in the MCS (Default: 2)
--compare {topology,elements,types}
Use 'topology' as a shorthand for '--atom-compare any --bond-compare any', 'elements' is '--atom-compare elements --bond-compare
any', and 'types' is '--atomcompare elements --bond-compare bondtypes' (Default: types)
--atom-compare {any,elements,isotopes}
Specify the atom comparison method. With 'any', every atom matches every other atom. With 'elements', atoms match only if they con-
tain the same element. With 'isotopes', atoms match only if they have the same isotope number; element information is ignored so
[5C] and [5P] are identical. This can be used to implement user-defined atom typing. (Default: elements)
--bond-compare {any,bondtypes}
Specify the bond comparison method. With 'any', every bond matches every other bond. With 'bondtypes', bonds are the same only if
their bond types are the same. (Default: bondtypes)
--atom-class-tag TAG
Use atom class assignments from the field 'TAG'. The tag data must contain a space separated list of integers in the range 1-10000,
one for each atom. Atoms are identical if and only if their corresponding atom classes are the same. Note that '003' and '3' are
treated as identical values. (Not used by default)
--ring-matches-ring-only
Modify the bond comparison so that ring bonds only match ring bonds and chain bonds only match chain bonds. (Ring atoms can still
match non-ring atoms.)
--complete-rings-only
If a bond is a ring bond in the input structures and a bond is in the MCS then the bond must also be in a ring in the MCS. Selecting
this option also enables --ring-matches-ring-only.
--select SELECT
Select a subset of the input records to process. Example: 1-10,13,20,50- (Default: '1-', which selects all structures)
--timeout SECONDS
Report the best solution after running for at most 'timeout' seconds. Use 'none' for no timeout. (Default: none)
--output FILENAME, -o FILENAME
Write the results to FILENAME (Default: use stdout)
--output-format {smarts,fragment-smiles,fragment-sdf,complete-sdf}
'smarts' writes the SMARTS pattern including the atom and bond criteria. 'fragment-smiles' writes a matching fragment as a SMILES
string. 'fragment-sdf' writes a matching fragment as a SD file; see --save-atom-class for details on how atom class information is
saved. 'complete-sdf' writes the entire SD file with the fragment information stored in the tag specified by --save-frag-
ment-indices-tag. (Default: smarts)
--output-all
By default the structure output formats only show an MCS for the first input structure. If this option is enabled then an MCS for
all of the structures are shown.
--save-atom-class-tag TAG
If atom classes are specified (via --class-tag) and the output format is 'fragment-sdf' then save the substructure atom classes to
the tag TAG, in fragment atom order. By default this is the value of --atomclass-tag.
--save-counts-tag TAG
Save the fragment count, atom count, and bond count to the specified SD tag as space separated integers, like '1 9 8'. (The fragment
count will not be larger than 1 until fmcs supports disconnected MCSes.)
--save-atom-indices-tag TAG
If atom classes are specified and the output format is 'complete-sdf' then save the MCS fragment atom indices to the tag TAG, in MCS
order. (Default: mcs-atomindices)
--save-smarts-tag TAG
Save the MCS SMARTS to the specified SD tag. Uses '-' if there is no MCS
--save-smiles-tag TAG
Save the fragment SMILES to the specified SD tag. Uses '-' if there is no MCS
--times
Print timing information to stderr
-v, --verbose
Print progress statistics to stderr. Use twice for higher verbosity.
--version
For more details on these options, see https://bitbucket.org/dalke/fmcs/
fmcs 1.0 June 2012 FMCS(1)