diff --git a/.gitignore b/.gitignore index 8b8166c..eea0d8a 100644 --- a/.gitignore +++ b/.gitignore @@ -182,3 +182,4 @@ Manifest.toml ###### Custom ##### *_clinical_trials/ *_clinical_trials.zip +NCT*.html diff --git a/Parser/APIResponse.xml b/Parser/APIResponse.xml deleted file mode 100644 index 04f93a7..0000000 --- a/Parser/APIResponse.xml +++ /dev/null @@ -1,338 +0,0 @@ - - 1.01.05 - 2022:02:17 23:05:26.160 - heart attack - 405147 - 8770 - 1 - 1 - 1 - - - - - - NCT01874691 - - 2011BAI11B02-A - - - - 2011BAI11B02 - Other Grant/Funding Number - Chinese Ministry of Science and Technology - - - - Chinese Academy of Medical Sciences, Fuwai Hospital - OTHER - - China Acute Myocardial Infarction Registry - China Acute Myocardial Infarction Registry - CAMIRegistry - - - January 2018 - Completed - - No - - - January 2013 - Actual - - - December 2016 - Actual - - - December 2016 - Actual - - June 4, 2013 - June 7, 2013 - - June 11, 2013 - Estimate - - January 23, 2018 - - January 25, 2018 - Actual - - - - - Principal Investigator - Yuejin Yang - Doctor - Chinese Academy of Medical Sciences, Fuwai Hospital - - - Chinese Academy of Medical Sciences, Fuwai Hospital - OTHER - - - - Yes - - - This study is to build a Chinese national registry and surveillance system for acute myocardial infarction(AMI) to obtain real-world information about current status of characteristics, risk factors, diagnosis, treatment and outcomes of Chinese AMI patients; And to propose scientific precaution strategies aimed to prevent effectively from the incidence of AMI; And to optimize the management and outcomes of AMI patients through implementation of guideline recommendations in clinical practice, and analysis and development of effective treatment strategies; And to create cost-effective assessment system. - The aim of the study is to establish the national platform for surveillance, clinical research and translational medicine in China, designed to facilitate efforts to improve the quality of AMI patient care and thus decrease morbidity and mortality associated with AMI. - - - - Acute Myocardial Infarction - - - acute myocardial infarction - China - Registry - - - - Observational - Yes - 2 Years - - - Case-Only - - - Prospective - - - - 20000 - Actual - - - - - - acute myocardial infarction - acute myocardial infarction including ST-elevation and non ST-elevation myocardial infarction - - - - - - - In-hospital mortality of the patients with acute myocardial infarction in different-level hospitals across China - Different-level hospitals include Provincial-level, city-level, County-level hospitals from all over China. - the duration of hospital stay, an expected average of 2 weeks - - - - - The rate of the application of thrombolysis and primary percutaneous coronary intervention for Chinese patients with acute myocardial infarction in different-level hospitals - In different-level hospitals, How many patients with acute myocardial infarction receive thrombolysis and/or primary percutaneous coronary intervention within 24 hours from the onset,respectively? - 24 hours - - - provoking factors of Chinese patients with AMI across different areas and different population in China - The different factors that can provoke the onset of acute myocardial infarction, for example, excess exercise, overload work, heavy smoking, heavy drinking of alcohol and so on. - 24 hours - - - - - the in-hospital cost of Chinese patients with acute myocardial infarction - the duration of hospital stay, an expected average of 2 weeks - - - - - Inclusion Criteria: Eligible patients must be admitted within 7 days of acute ischemic symptoms ... - No - All - - Child - Adult - Older Adult - - Eligible patients admitted within 7 days of acute ischemic symptoms and diagnosed acute ST-elevation or non ST-elevation myocardial infarction. - Probability Sample - - - - - Yuejin Yang, MD. - Fuwai Hospital, Chinse Academy of Medical Sciences - Study Chair - - - - - Fuwai Hospital - Beijing - Beijing - 100037 - China - - - - - - - 20031882 - background - Peterson ED, Roe MT, Rumsfeld JS, Shaw RE, Brindis RG, Fonarow GC, Cannon CP. A call to ACTION (acute coronary treatment and intervention outcomes network): a national effort to promote timely clinical feedback and support continuous quality improvement for acute myocardial infarction. Circ Cardiovasc Qual Outcomes. 2009 Sep;2(5):491-9. doi: 10.1161/CIRCOUTCOMES.108.847145. - - - 34631809 - derived - Shi W, Ni L, Yang J, Fan X, Yu M, Yang H, Yu M, Yang Y; China Acute Myocardial Infarction (CAMI) Registry study group. The Clinical Impact of Proton Pump Inhibitors When Co-Administered With Dual Antiplatelet Therapy in Patients Having Acute Myocardial Infarction With Low Risk of Gastrointestinal Bleeding: Insights From the China Acute Myocardial Infarction Registry. Front Cardiovasc Med. 2021 Sep 22;8:685072. doi: 10.3389/fcvm.2021.685072. eCollection 2021. - - - 34493500 - derived - Shi W, Fan X, Yang J, Ni L, Su S, Yu M, Yang H, Yu M, Yang Y; China Acute Myocardial Infarction(CAMI) Registry Study Group. In-hospital gastrointestinal bleeding in patients with acute myocardial infarction: incidence, outcomes and risk factors analysis from China Acute Myocardial Infarction Registry. BMJ Open. 2021 Sep 7;11(9):e044117. doi: 10.1136/bmjopen-2020-044117. - - - 31567475 - derived - Song CX, Fu R, Yang JG, Xu HY, Gao XJ, Wang CY, Zheng Y, Jia SB, Dou KF, Yang YJ; CAMI Registry study group. Angiographic characteristics and in-hospital mortality among patients with ST-segment elevation myocardial infarction presenting without typical chest pain: an analysis of China Acute Myocardial Infarction registry. Chin Med J (Engl). 2019 Oct 5;132(19):2286-2291. doi: 10.1097/CM9.0000000000000432. - - - 31515430 - derived - Song C, Fu R, Li S, Yang J, Wang Y, Xu H, Gao X, Liu J, Liu Q, Wang C, Dou K, Yang Y. Simple risk score based on the China Acute Myocardial Infarction registry for predicting in-hospital mortality among patients with non-ST-segment elevation myocardial infarction: results of a prospective observational cohort study. BMJ Open. 2019 Sep 12;9(9):e030772. doi: 10.1136/bmjopen-2019-030772. - - - 31471442 - derived - Song C, Fu R, Dou K, Yang J, Xu H, Gao X, Wang H, Liu S, Fan X, Yang Y. Association between smoking and in-hospital mortality in patients with acute myocardial infarction: results from a prospective, multicentre, observational study in China. BMJ Open. 2019 Aug 30;9(8):e030252. doi: 10.1136/bmjopen-2019-030252. - - - 31255895 - derived - Leng W, Yang J, Fan X, Sun Y, Xu H, Gao X, Wang Y, Li W, Xu Y, Han Y, Jia S, Zheng Y, Yang Y; behalf CAMI Registry investigators. Contemporary invasive management and in-hospital outcomes of patients with non-ST-segment elevation myocardial infarction in China: Findings from China Acute Myocardial Infarction (CAMI) Registry. Am Heart J. 2019 Sep;215:1-11. doi: 10.1016/j.ahj.2019.05.015. Epub 2019 Jun 6. - - - 30807351 - derived - Fu R, Song CX, Dou KF, Yang JG, Xu HY, Gao XJ, Liu QQ, Xu H, Yang YJ. Differences in symptoms and pre-hospital delay among acute myocardial infarction patients according to ST-segment elevation on electrocardiogram: an analysis of China Acute Myocardial Infarction (CAMI) registry. Chin Med J (Engl). 2019 Mar 5;132(5):519-524. doi: 10.1097/CM9.0000000000000122. - - - 28052755 - derived - Dai Y, Yang J, Gao Z, Xu H, Sun Y, Wu Y, Gao X, Li W, Wang Y, Gao R, Yang Y; CAMI Registry study group. Atrial fibrillation in patients hospitalized with acute myocardial infarction: analysis of the china acute myocardial infarction (CAMI) registry. BMC Cardiovasc Disord. 2017 Jan 4;17(1):2. doi: 10.1186/s12872-016-0442-9. - - - 27530939 - derived - Sun H, Yang YJ, Xu HY, Yang JG, Gao XJ, Wu Y, Li W, Wang Y, Liu J, Jin C, Song L; CAMI Registry Study Group. [Survey of medical care resources of acute myocardial infarction in different regions and levels of hospitals in China]. Zhonghua Xin Xue Guan Bing Za Zhi. 2016 Jul 24;44(7):565-9. doi: 10.3760/cma.j.issn.0253-3758.2016.07.003. Chinese. - - - - - - - February 18, 2022 - - - - - D000009203 - Myocardial Infarction - - - D000007238 - Infarction - - - - - D000007511 - Ischemia - - - D000010335 - Pathologic Processes - - - D000009336 - Necrosis - - - D000017202 - Myocardial Ischemia - - - D000006331 - Heart Diseases - - - D000002318 - Cardiovascular Diseases - - - D000014652 - Vascular Diseases - - - - - M11307 - Myocardial Infarction - Myocardial Infarction - high - - - M9434 - Infarction - Infarction - high - - - M9695 - Ischemia - low - - - M11436 - Necrosis - low - - - M5698 - Coronary Artery Disease - low - - - M18658 - Myocardial Ischemia - low - - - M8571 - Heart Diseases - low - - - M16552 - Vascular Diseases - low - - - - - BC14 - Heart and Blood Diseases - - - BC23 - Symptoms and General Pathology - - - All - All Conditions - - - - - - - - diff --git a/Parser/ctparse/Cargo.lock b/Parser/ctparse/Cargo.lock deleted file mode 100644 index 977f469..0000000 --- a/Parser/ctparse/Cargo.lock +++ /dev/null @@ -1,152 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "aho-corasick" -version = "0.7.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" -dependencies = [ - "memchr", -] - -[[package]] -name = "ctparse" -version = "0.1.0" -dependencies = [ - "quick-xml", - "regex", - "serde", - "strong-xml", -] - -[[package]] -name = "jetscii" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9447923c57a8a2d5c1b0875cdf96a6324275df728b498f2ede0e5cbde088a15" - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "memchr" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" - -[[package]] -name = "proc-macro2" -version = "1.0.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" -dependencies = [ - "unicode-xid", -] - -[[package]] -name = "quick-xml" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0452695941410a58c8ce4391707ba9bad26a247173bd9886a05a5e8a8babec75" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "quote" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "regex" -version = "1.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.6.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" - -[[package]] -name = "serde" -version = "1.0.136" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.136" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "strong-xml" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d19fb3a618e2f1039e32317c9f525e6d45c55af704ec7c429aa74412419bebf" -dependencies = [ - "jetscii", - "lazy_static", - "memchr", - "strong-xml-derive", - "xmlparser", -] - -[[package]] -name = "strong-xml-derive" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92c781f499321613b112be5d9338189ef1ed19689a01edd23d923ea57ad5c7e1" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "syn" -version = "1.0.86" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b" -dependencies = [ - "proc-macro2", - "quote", - "unicode-xid", -] - -[[package]] -name = "unicode-xid" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" - -[[package]] -name = "xmlparser" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8" diff --git a/Parser/ctparse/Cargo.toml b/Parser/ctparse/Cargo.toml deleted file mode 100644 index 6bc71d3..0000000 --- a/Parser/ctparse/Cargo.toml +++ /dev/null @@ -1,12 +0,0 @@ -[package] -name = "ctparse" -version = "0.1.0" -edition = "2021" - -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[dependencies] -regex = "1.5" -serde = { version = "1.0", features = [ "derive" ] } -quick-xml = { version = "0.21", features = [ "serialize" ] } -strong-xml = "0.6" \ No newline at end of file diff --git a/Parser/ctparse/src/main (copy).rs b/Parser/ctparse/src/main (copy).rs deleted file mode 100644 index 063a9f2..0000000 --- a/Parser/ctparse/src/main (copy).rs +++ /dev/null @@ -1,45 +0,0 @@ -use quick_xml::Reader; -use quick_xml::events::Event; -use std::path::Path; - -use serde::Deserialize; -use quick_xml::de::{from_str, DeError}; - -fn main() { - -let xml = r#" - Test - - Test 2 - - "#; -let filepath = Path::new(r"/home/dad/research/ClinicalTrialsDataProcessing/Parser/APIResponse.xml"); - - - -//let mut reader = Reader::from_file(filepath).unwrap(); -let mut reader = Reader::from_str(xml); -reader.trim_text(true); - - - - -let mut count = 0; -let mut buf = Vec::new(); -let mut txt = Vec::new(); -let mut names = Vec::new(); - -loop { - match reader.read_event(&mut buf) { - Ok(Event::Start(ref e)) => names.push(e.unescape_and_decode(&reader)), - Ok(Event::Text(e)) => txt.push(e.unescape_and_decode(&reader).expect("Error!")), - Err(e) => panic!("Error at position {}: {:?}", reader.buffer_position(), e), - Ok(Event::Eof) => break, - _ => (), - } - buf.clear(); -} -println!("Found {} start events", count); -println!("Text events: {:?}", txt); -println!("Text events: {:?}", names); -} \ No newline at end of file diff --git a/Parser/ctparse/src/main.rs b/Parser/ctparse/src/main.rs deleted file mode 100644 index 98d55a3..0000000 --- a/Parser/ctparse/src/main.rs +++ /dev/null @@ -1,65 +0,0 @@ -use regex::Regex; -use std::error::Error; -use std::path::Path; -use std::fs::read_to_string; - -trait Structs { - ///This writes fields to the database, and returns some sort of data from it. - fn write_fields() {}//-> Result<&str, Error> {} //TODO: Change to the db error type - fn write_structs() {}//-> Result<&str, Error> {} //TODO: change to the db error type -} - -trait Fields { - fn insert_values<'a>() -> Result<&'a str, Error> {} //TODO: change to the db error type. -} - -struct Data<'a> { - /// This represents a leaf on the xml dom tree - name: &str, - value: &str -} - -enum Sections { - //This represents various heading pieces - Study { name: &str }, - ProtocolSection { - name: &str, - modules: Vec, - } - DerivedSection {} -} -enum Modules { - /// These represent the different tags, as defined by the - IdentificationModule { - nctid: &str - }, - StatusModule { - primary_completion: PrimaryCompletionDate, - completion_date: CompletionDate, - last_update_submit: StudyLastUpdateSubmit, - }, - -} - -struct PrimaryCompletionDate {} - -impl Structs for PrimaryCompletionDate { - //fill out functions -} - -struct CompletionDate {} -struct StudyLastUpdateSubmit {} -//etc - - -impl Structs for crate::Modules::StatusModule {} - -fn main() { - // filepath - let filepath: &Path = Path::new("/home/dad/research/ClinicalTrialsDataProcessing/Parser/APIResponse.xml"); - // read in a file - let xml = read_to_string(filepath).unwrap(); - //let xml = r#"NCT01874691"#; - - -} diff --git a/Parser/ctparse/src/main_regex.rs b/Parser/ctparse/src/main_regex.rs deleted file mode 100644 index 3318297..0000000 --- a/Parser/ctparse/src/main_regex.rs +++ /dev/null @@ -1,74 +0,0 @@ -use regex::Regex; -use std::path::Path; -use std::fs::read_to_string; - -//Design questions -// Should I make a regex for each item to match or match each field individually? -// Pros and cons of Individual Regex -// It would be easy to create each new regex, there may even be a way to procedurally generate them. -// Each time I add a new regex I'll have to incorporate it into loop of things to look for. -// There would be a lot of rereading the same xml. -// Pros of match statement - -//I think I'll do the match statement approach as any extension just needs an associated processing function. - - -//Possible approach: Recursive definitions. -// So, create a regex for fields and one for structs, -// Upon parsing a struct, match on name and process. - // processing a struct involves parsing all sub elements - // List: process each element and add in a vec - // Field: extract data and name, return up. - // Struct: extract substructs, lists, and fields - -//In the db, lists need to have their own 1:1 table. - -// I want to be able to flatten the data in the XML. -// I think my approach should be: Only one field type, and it is used to handle parsing individual fields and bubling up their data. -// - -struct Field<'a, T> { - name: &'a str, - value: T -} - -fn process_fields(xml: &str) -> Vec> { - //Capture fields - // For each field, Instantiate a Field - // Return the fields -} - - -fn process_lists() { - //processes each struct in the list, returning a list of the structs -} - -//each Struct of interest should have its own struct. -// Some of these structs will implement a db_writer trait to send data to the DB. -// Each struct that doesn't have a db_writer trait should have a db_insert_values trait that flattens the data as desired. -// Roughly speaking, each db_writer will only have db_insert_values or db_writers. -// db_writer will recursively call db_writer until the bottom of each step, and db_insert_values are then used to load data into tables. -// One way to do the parsing would be to have a trait from_xml which turns each - -fn main() { - // regext to select field with it's - let re_field = Regex::new(r#"(?P.*?)\n"#).unwrap(); - let re_struct = Regex::new(r#"(?P.*?)\n"#).unwrap(); - let re_list = Regex::new(r#"(?P.*?)\n"#).unwrap(); - - // filepath - let filepath: &Path = Path::new("/home/dad/research/ClinicalTrialsDataProcessing/Parser/APIResponse.xml"); - // read in a file - let xml = read_to_string(filepath).unwrap(); - //let xml = r#"NCT01874691"#; - - // get all regex matches - let prisonsers = re_field.captures_iter(&xml); - - // iterate through caputed values, building structs that represent data of interest. - - for m in prisonsers { - println!("1:{:?}, {:?}\n",&m["name"], &m["value"]); - } - -} diff --git a/Parser/ctparse/src/main_serde_(recursion issues).rs b/Parser/ctparse/src/main_serde_(recursion issues).rs deleted file mode 100644 index 6b82254..0000000 --- a/Parser/ctparse/src/main_serde_(recursion issues).rs +++ /dev/null @@ -1,36 +0,0 @@ -use regex::Regex; -use std::path::Path; -use std::fs::read_to_string; -use serde::Deserialize; -use quick_xml::de::{from_str, DeError}; - -#[derive(Debug, Deserialize, PartialEq)] -struct Struct { - Name: String, - #[serde(rename = "Field", default)] - fields: Vec, - #[serde(rename = "Struct", default)] - structs: Vec - } - -#[derive(Debug, Deserialize, PartialEq)] -struct Field { - Name: String, - #[serde(rename = "$value")] - value:String, - } - - - -fn main() { - // filepath - let filepath: &Path = Path::new("/home/dad/research/ClinicalTrialsDataProcessing/Parser/simple.xml"); - - // read in a file - let xml = read_to_string(filepath).unwrap(); - //let xml = r#"NCT01874691"#; - - let s: Struct = from_str(&xml).unwrap(); - - println!("{:?}", s.Name) -} \ No newline at end of file diff --git a/Parser/parse.py b/Parser/parse.py deleted file mode 100644 index 97a14c2..0000000 --- a/Parser/parse.py +++ /dev/null @@ -1,7 +0,0 @@ -import xml.etree.ElementTree as et - -tree = et.parse("./Parser/APIResponse.xml") - -root = tree.getroot() - -print(tree.findall("EnrollmentInfo")) \ No newline at end of file diff --git a/Parser/parser.txt b/Parser/parser.txt deleted file mode 100644 index f6e18d8..0000000 --- a/Parser/parser.txt +++ /dev/null @@ -1,15 +0,0 @@ -Design decisions - -There are roughly 2 ways to [parse xml](https://simplabs.com/blog/2020/12/31/xml-and-rust/). - -The first is to use a streaming parser, which reads the string in and extracts the required data as it moves along. -The second is to unpack the xml into an internal representation in ram and access it there. - -For what I need, I believe a streaming parser will work best as I want to read through the file once and extract the details needed. - -I may be able to add that to plpgsql or do it in plpgsql directly. - - - -Alternatively, after attempts with python xml and rust's quick_xml, I think I might be better off with a "find line in string matching this, manually parse the data" -I still need to give a dom a try. \ No newline at end of file diff --git a/Parser/simple.xml b/Parser/simple.xml deleted file mode 100644 index b93f20d..0000000 --- a/Parser/simple.xml +++ /dev/null @@ -1,324 +0,0 @@ - - - - NCT01874691 - - 2011BAI11B02-A - - - - 2011BAI11B02 - Other Grant/Funding Number - Chinese Ministry of Science and Technology - - - - Chinese Academy of Medical Sciences, Fuwai Hospital - OTHER - - China Acute Myocardial Infarction Registry - China Acute Myocardial Infarction Registry - CAMIRegistry - - - January 2018 - Completed - - No - - - January 2013 - Actual - - - December 2016 - Actual - - - December 2016 - Actual - - June 4, 2013 - June 7, 2013 - - June 11, 2013 - Estimate - - January 23, 2018 - - January 25, 2018 - Actual - - - - - Principal Investigator - Yuejin Yang - Doctor - Chinese Academy of Medical Sciences, Fuwai Hospital - - - Chinese Academy of Medical Sciences, Fuwai Hospital - OTHER - - - - Yes - - - This study is to build a Chinese national registry and surveillance system for acute myocardial infarction(AMI) to obtain real-world information about current status of characteristics, risk factors, diagnosis, treatment and outcomes of Chinese AMI patients; And to propose scientific precaution strategies aimed to prevent effectively from the incidence of AMI; And to optimize the management and outcomes of AMI patients through implementation of guideline recommendations in clinical practice, and analysis and development of effective treatment strategies; And to create cost-effective assessment system. - The aim of the study is to establish the national platform for surveillance, clinical research and translational medicine in China, designed to facilitate efforts to improve the quality of AMI patient care and thus decrease morbidity and mortality associated with AMI. - - - - Acute Myocardial Infarction - - - acute myocardial infarction - China - Registry - - - - Observational - Yes - 2 Years - - - Case-Only - - - Prospective - - - - 20000 - Actual - - - - - - acute myocardial infarction - acute myocardial infarction including ST-elevation and non ST-elevation myocardial infarction - - - - - - - In-hospital mortality of the patients with acute myocardial infarction in different-level hospitals across China - Different-level hospitals include Provincial-level, city-level, County-level hospitals from all over China. - the duration of hospital stay, an expected average of 2 weeks - - - - - The rate of the application of thrombolysis and primary percutaneous coronary intervention for Chinese patients with acute myocardial infarction in different-level hospitals - In different-level hospitals, How many patients with acute myocardial infarction receive thrombolysis and/or primary percutaneous coronary intervention within 24 hours from the onset,respectively? - 24 hours - - - provoking factors of Chinese patients with AMI across different areas and different population in China - The different factors that can provoke the onset of acute myocardial infarction, for example, excess exercise, overload work, heavy smoking, heavy drinking of alcohol and so on. - 24 hours - - - - - the in-hospital cost of Chinese patients with acute myocardial infarction - the duration of hospital stay, an expected average of 2 weeks - - - - - Inclusion Criteria: Eligible patients must be admitted within 7 days of acute ischemic symptoms ... - No - All - - Child - Adult - Older Adult - - Eligible patients admitted within 7 days of acute ischemic symptoms and diagnosed acute ST-elevation or non ST-elevation myocardial infarction. - Probability Sample - - - - - Yuejin Yang, MD. - Fuwai Hospital, Chinse Academy of Medical Sciences - Study Chair - - - - - Fuwai Hospital - Beijing - Beijing - 100037 - China - - - - - - - 20031882 - background - Peterson ED, Roe MT, Rumsfeld JS, Shaw RE, Brindis RG, Fonarow GC, Cannon CP. A call to ACTION (acute coronary treatment and intervention outcomes network): a national effort to promote timely clinical feedback and support continuous quality improvement for acute myocardial infarction. Circ Cardiovasc Qual Outcomes. 2009 Sep;2(5):491-9. doi: 10.1161/CIRCOUTCOMES.108.847145. - - - 34631809 - derived - Shi W, Ni L, Yang J, Fan X, Yu M, Yang H, Yu M, Yang Y; China Acute Myocardial Infarction (CAMI) Registry study group. The Clinical Impact of Proton Pump Inhibitors When Co-Administered With Dual Antiplatelet Therapy in Patients Having Acute Myocardial Infarction With Low Risk of Gastrointestinal Bleeding: Insights From the China Acute Myocardial Infarction Registry. Front Cardiovasc Med. 2021 Sep 22;8:685072. doi: 10.3389/fcvm.2021.685072. eCollection 2021. - - - 34493500 - derived - Shi W, Fan X, Yang J, Ni L, Su S, Yu M, Yang H, Yu M, Yang Y; China Acute Myocardial Infarction(CAMI) Registry Study Group. In-hospital gastrointestinal bleeding in patients with acute myocardial infarction: incidence, outcomes and risk factors analysis from China Acute Myocardial Infarction Registry. BMJ Open. 2021 Sep 7;11(9):e044117. doi: 10.1136/bmjopen-2020-044117. - - - 31567475 - derived - Song CX, Fu R, Yang JG, Xu HY, Gao XJ, Wang CY, Zheng Y, Jia SB, Dou KF, Yang YJ; CAMI Registry study group. Angiographic characteristics and in-hospital mortality among patients with ST-segment elevation myocardial infarction presenting without typical chest pain: an analysis of China Acute Myocardial Infarction registry. Chin Med J (Engl). 2019 Oct 5;132(19):2286-2291. doi: 10.1097/CM9.0000000000000432. - - - 31515430 - derived - Song C, Fu R, Li S, Yang J, Wang Y, Xu H, Gao X, Liu J, Liu Q, Wang C, Dou K, Yang Y. Simple risk score based on the China Acute Myocardial Infarction registry for predicting in-hospital mortality among patients with non-ST-segment elevation myocardial infarction: results of a prospective observational cohort study. BMJ Open. 2019 Sep 12;9(9):e030772. doi: 10.1136/bmjopen-2019-030772. - - - 31471442 - derived - Song C, Fu R, Dou K, Yang J, Xu H, Gao X, Wang H, Liu S, Fan X, Yang Y. Association between smoking and in-hospital mortality in patients with acute myocardial infarction: results from a prospective, multicentre, observational study in China. BMJ Open. 2019 Aug 30;9(8):e030252. doi: 10.1136/bmjopen-2019-030252. - - - 31255895 - derived - Leng W, Yang J, Fan X, Sun Y, Xu H, Gao X, Wang Y, Li W, Xu Y, Han Y, Jia S, Zheng Y, Yang Y; behalf CAMI Registry investigators. Contemporary invasive management and in-hospital outcomes of patients with non-ST-segment elevation myocardial infarction in China: Findings from China Acute Myocardial Infarction (CAMI) Registry. Am Heart J. 2019 Sep;215:1-11. doi: 10.1016/j.ahj.2019.05.015. Epub 2019 Jun 6. - - - 30807351 - derived - Fu R, Song CX, Dou KF, Yang JG, Xu HY, Gao XJ, Liu QQ, Xu H, Yang YJ. Differences in symptoms and pre-hospital delay among acute myocardial infarction patients according to ST-segment elevation on electrocardiogram: an analysis of China Acute Myocardial Infarction (CAMI) registry. Chin Med J (Engl). 2019 Mar 5;132(5):519-524. doi: 10.1097/CM9.0000000000000122. - - - 28052755 - derived - Dai Y, Yang J, Gao Z, Xu H, Sun Y, Wu Y, Gao X, Li W, Wang Y, Gao R, Yang Y; CAMI Registry study group. Atrial fibrillation in patients hospitalized with acute myocardial infarction: analysis of the china acute myocardial infarction (CAMI) registry. BMC Cardiovasc Disord. 2017 Jan 4;17(1):2. doi: 10.1186/s12872-016-0442-9. - - - 27530939 - derived - Sun H, Yang YJ, Xu HY, Yang JG, Gao XJ, Wu Y, Li W, Wang Y, Liu J, Jin C, Song L; CAMI Registry Study Group. [Survey of medical care resources of acute myocardial infarction in different regions and levels of hospitals in China]. Zhonghua Xin Xue Guan Bing Za Zhi. 2016 Jul 24;44(7):565-9. doi: 10.3760/cma.j.issn.0253-3758.2016.07.003. Chinese. - - - - - - - February 18, 2022 - - - - - D000009203 - Myocardial Infarction - - - D000007238 - Infarction - - - - - D000007511 - Ischemia - - - D000010335 - Pathologic Processes - - - D000009336 - Necrosis - - - D000017202 - Myocardial Ischemia - - - D000006331 - Heart Diseases - - - D000002318 - Cardiovascular Diseases - - - D000014652 - Vascular Diseases - - - - - M11307 - Myocardial Infarction - Myocardial Infarction - high - - - M9434 - Infarction - Infarction - high - - - M9695 - Ischemia - low - - - M11436 - Necrosis - low - - - M5698 - Coronary Artery Disease - low - - - M18658 - Myocardial Ischemia - low - - - M8571 - Heart Diseases - low - - - M16552 - Vascular Diseases - low - - - - - BC14 - Heart and Blood Diseases - - - BC23 - Symptoms and General Pathology - - - All - All Conditions - - - - -