Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

This resource contains data and code for the paper

which describes a representation, dataset, and algorithms for aligning nodes and subgraphs of Abstract Meaning Representation (AMR) semantic structures with nodes and subgraphs of syntactic parses in the Universal Dependencies (UD) framework.


To run the rule-base aligner described in the paper you'll need an AMR file and a file with UD parse of the same sentences in the same order in CoNLL format. The aligner does not require any specific version of UD annotation.

Run the align script: python2 -p "UD_parse_file" -a "AMR_file" -o "output_alignment_file"

To run the aligner on and AMR only, you need to start a CoreNLP server (see and run python2 -a "AMR_file" -o "output_alignment_file"

If you'd like to save the automatic UD parses, run: python2 -a "AMR_file" -o "output_alignment_file" -w "output_ud_parse_file"



To recover our manual alignments you will need to have access to AMR Release 1.0. Unzip the release files and cd to corpus/release1/unsplit. From there run:

cat amr-release-1.0-bolt.txt amr-release-1.0-consensus.txt  amr-release-1.0-dfa.txt  amr-release-1.0-mt09sdl.txt amr-release-1.0-xinhua.txt amr-release-1.0-proxy.txt > ~/YOUR_PATH/amr_ud/data/amr-release-1.0-all.txt

to concatenate all release files into one.

Then cd to amr_ud and run:

patch ./alignments/aligned_amrs_reconstructed.txt -i ./alignments/amrs.patch -o ./alignments/aligned_amrs.txt
patch ./alignments/ud_parses_ldc_reconstructed.txt -i ./alignments/ud_parses.patch -o ./alignments/ud_parses_patched.txt
tr '\n%@' '\t\n\n' <./alignments/ud_parses_patched.txt >./alignments/ud_parses.txt
patch ./alignments/amr_ud_alignments_ldc_reconstructed.txt -i ./alignments/alignments.patch -o ./alignments/amr_ud_alignments.txt
rm ./alignments/aligned_amrs_reconstructed.txt ./alignments/ud_parses_patched.txt ./alignments/ud_parses_ldc_reconstructed.txt ./alignments/amr_ud_alignments_ldc_reconstructed.txt

The following files should be created in the amr_ud/alignments directory:

  • aligned_amrs.txt: contains all AMRs for which hand alignments were created
  • ud_parses.txt: contains hand-corrected UD parses for those AMRs
  • amr_ud_alignments: contains manual alignments


The format of the alignments is as follows:

AMR subgraph    #    UD subgraph

A subgraph might be a single node, or it might contain nodes and edges:

notation meaning
x/word1 node x, whose label is word1
x/word1 :rel y/word2 a subgraph consisting of x, its child y, and the edge connecting them labeled rel
x/word1 ( :rel1 y/word2 ) | :rel2 z/word3 a subgraph consisting of x, two of its children, and the connecting edges

( ) groups subgraphs, | separates children of one parent node

Non-LDC alignments

The file 'amr_ud_alignment_nonldc.txt' contains alignments and UD parses for AMRs which were not included in the LDC AMR release, and which can be freely shared. All those AMRs, parses, and alignments are also included in the full alignment corpus reconstructed according to the instructions above.


No description, website, or topics provided.



No releases published


No packages published