From: Rajarshi G. <rg...@in...> - 2007-09-25 14:36:42
|
Hi, slightly off-topic but it is related to CDK stuff I'm working on a DTD for pharmacophore description files. The description file would be of the form <pharmacophore label="5HT1 receptor"> <group label="H" description="Hydrophobic groups">SMARTS</group> <group label="D" description="Hydrogen bond donor">SMARTS</group> <group label="P" description="Positive groups">SMARTS</group> <constraint type="distance" units="???" groupRef="H D">1.234</ constraint> <constraint type="distance" units="???" groupRef="H P">3.456</ constraint> </pharmacophore> My DTD would look like <!ELEMENT pharmacophore (group, constraint)+> <!ATTLIST pharmacophore label CDATA #REQUIRED> <!ELEMENT group (#CDATA)> <!ATTLIST group label CDATA #REQUIRED description CDATA #IMPLIED> <!ELEMENT constraint (#PCDATA)> <!ATTLIST constraint type (distance | angle | torsion) "distance" units PCDATA #REQUIRED groupRefs CDATA #REQUIRED> A few questions * Can I use an arbitrary namespace? Would it be possible to make this part of the BO and then use a BO namespace such as http:// www.blueobelisk.org/dtd/pharmacophore.dtd? * How should I specify units? Do I need to import another DTD for that? * In the constraint element I used groupRefs in the same way that the bond element in CML uses atomRefs. However what I'd like to have is to be able to use groupRefs as subelements of constraint, rather than attributes and also enforce cardinality of groupRefs based on the type of the constraint. So for example I'd like to be able to write a distance constraint element as <constraint type="distance" units="???" value="1.234"> <groupRef id="H" /> <groupRef id="P" /> </constraint> but an angle constraint would be <constraint type="angle" units="???" value="34"> <groupRef id="H" /> <groupRef id="P" /> <groupRef id="D" /> </constraint> More over , how does one indicate that the value of the id attribute must be a valid group (i.e., there must be a group element that has a label equal to the id of the groupRef)? ------------------------------------------------------------------- Rajarshi Guha <rg...@in...> GPG Fingerprint: 0CCA 8EE2 2EEB 25E2 AB04 06F7 1BB9 E634 9B87 56EE ------------------------------------------------------------------- After a number of decimal places, nobody gives a damn. |