APIs

RxClass API

getSimilarityInformation

Information returned
Similarity of the clinically-significant membership of two classes
Service domain
https://rxnav.nlm.nih.gov
HTTP request
GET  /REST/rxclass/class/similarInfo.xml?classId1=value&relaSource1=value&rela1=value&classId2=value&relaSource2=value&rela2=value

Description

Return metrics of the similarity between two classes, identified by (relaSource1, classId1, rela1) and (relaSource2, classId2, rela2) respectively.

For combinations of rela and relaSrc that can uniquely identify a class, see getClassMembers. A rela parameter, rela1 or rela2, may be omitted only if it would be empty.

Class similarity compares clinically-significant RxNorm ingredients, which may be different from the drugs reported by getClassMembers. See Similarity Scoring for details on how the similar classes are determined.

The classes' similarity scores are returned in response elements equivalenceScore and inclusionScore. A summary of the basis of computation is returned in intersection, cardinality1, and cardinality2. The clinically-significant RxNorm ingredients considered in the computation are returned in drugClassPair, including flags inClass1 and inClass2.

Parameters

ParameterLocationUseDescriptionDefault
formatPathOptional

Notation for results

One of:
.xml
Get results in XML
.json
Get results in JSON
.xml
classId1QueryRequiredClass 1: class identifier
relaSource1QueryRequiredClass 1: source of drug relations

(See getSourcesOfDrugClassRelations for the menu.)

rela1QueryOptionalClass 1: relationship of the drug class to its members

(See getRelas for the menu.)

classId2QueryRequiredClass 2: class identifier
relaSource2QueryRequiredClass 2: source of drug relations

(See getSourcesOfDrugClassRelations for the menu.)

rela2QueryOptionalClass 2: relationship of the drug class to its members

(See getRelas for the menu.)

All query parameters are case-insensitive.

Note that HTTP requires that query parameters be "URL encoded". For full information on URL encoding, please refer to IETF RFC 3986, "Uniform Resource Identifier".

Output structure

Results are available as either XML or JSON.

  • The XML result has the root element rxclassdata. It is described in the XML Schema for the RxClass API; the relevant element structure is summarized below. Elements that would be empty might be left out.

  • The JSON result is an object {...}, analogous to the content of the XML rxclassdata. Fields that might occur multiple times in the XML are expressed as an array. Fields that would be empty might be null or left out. Numbers are expressed as strings.

Both XML and JSON results follow the same outline:

rxclassdata
Root element in XML, or anonymous object in JSON
SimilarityInformation
drugClassConcept (array of 2)
rela
Member relationship that defines the class
relaSource
Drug-member relationship source
rxclassMinConceptItem
Drug class
classId
Class identifier (an ID in the namespace of the class source)
className
Class name
classType
Class type (ATC1-4, CHEM, DISPOS, EPC, VA, etc.)
classUrl
Link to the class source
drugClassPair (array)
minConcept
Drug that is a class member
rxcui
RxNorm identifier
name
Drug name
tty
Drug term type
inClass1
"true" or "false" - whether the drug is a member of class 1
inClass2
"true" or "false" - whether the drug is a member of class 2
similarityEntityItem
Similarity stats
equivalenceScore
Degree of overlap of two classes
inclusionScore
Degree to which one compared class includes the other
intersection
Number of drugs common to both classes
cardinality1
Number of drugs in class 1
cardinality2
Number of drugs in class 2

Example: Comparison of ATC "natural opium alkaloids" (id=N02AA) with MoA "Full Opioid Agonists" (id=N0000175684)

XML: https://rxnav.nlm.nih.gov/REST/rxclass/class/similarInfo?classId1=N02AA&relaSource1=ATC&classId2=N0000175684&relaSource2=dailymed&rela2=has_moa

JSON: https://rxnav.nlm.nih.gov/REST/rxclass/class/similarInfo.json?classId1=N02AA&relaSource1=ATC&classId2=N0000175684&relaSource2=dailymed&rela2=has_moa

An XML result is shown below.

<rxclassdata>
    <SimilarityInformation>
        <drugClassConcept>
            <rela/>
            <relaSource>ATC</relaSource>
            <rxclassMinConceptItem>
                <classId>N02AA</classId>
                <className>Natural opium alkaloids</className>
                <classType>ATC1-4</classType>
            </rxclassMinConceptItem>
        </drugClassConcept>
        <drugClassConcept>
            <rela>has_moa</rela>
            <relaSource>DAILYMED</relaSource>
            <rxclassMinConceptItem>
                <classId>N0000175684</classId>
                <className>Full Opioid Agonists</className>
                <classType>MOA</classType>
            </rxclassMinConceptItem>
        </drugClassConcept>
        <drugClassPair>
            <minConcept>
                <rxcui>23088</rxcui>
                <name>dihydrocodeine</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>3423</rxcui>
                <name>hydromorphone</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>7052</rxcui>
                <name>morphine</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>7676</rxcui>
                <name>opium</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>false</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>7804</rxcui>
                <name>oxycodone</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>7814</rxcui>
                <name>oxymorphone</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>true</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>10689</rxcui>
                <name>tramadol</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>1653781</rxcui>
                <name>eluxadoline</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>2569089</rxcui>
                <name>difelikefalin</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>2670</rxcui>
                <name>codeine</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>4337</rxcui>
                <name>fentanyl</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>480</rxcui>
                <name>alfentanil</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>56795</rxcui>
                <name>sufentanil</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>6378</rxcui>
                <name>levorphanol</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>6754</rxcui>
                <name>meperidine</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>6813</rxcui>
                <name>methadone</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <drugClassPair>
            <minConcept>
                <rxcui>73032</rxcui>
                <name>remifentanil</name>
                <tty>IN</tty>
            </minConcept>
            <inClass1>false</inClass1>
            <inClass2>true</inClass2>
        </drugClassPair>
        <similarityEntityItem>
            <equivalenceScore>0.2695633</equivalenceScore>
            <inclusionScore>-0.6944444</inclusionScore>
            <intersection>5</intersection>
            <cardinality1>6</cardinality1>
            <cardinality2>16</cardinality2>
        </similarityEntityItem>
    </SimilarityInformation>
</rxclassdata>