From 1bbfc602bf32314e031a21db3321aaa94d186b57 Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Fri, 27 Mar 2015 16:43:00 -0400 Subject: [PATCH 1/6] Empty TaxBlaster project --- TaxBlaster/.project | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 TaxBlaster/.project diff --git a/TaxBlaster/.project b/TaxBlaster/.project new file mode 100644 index 0000000..0f2334a --- /dev/null +++ b/TaxBlaster/.project @@ -0,0 +1,23 @@ + + + TaxBlaster + + + + + + org.eclipse.xtext.ui.shared.xtextBuilder + + + + + com.modelsolv.reprezen.ui.RepreZenBuilder + + + + + + com.modelsolv.reprezen.zenNature + org.eclipse.xtext.ui.shared.xtextNature + + From 708f3db366dd6a680ef7f73542d4a360b5e0598c Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Fri, 27 Mar 2015 17:40:50 -0400 Subject: [PATCH 2/6] TaxBlaster model imported from ERwin --- TaxBlaster/models/TaxBlaster.zen | 39 ++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 TaxBlaster/models/TaxBlaster.zen diff --git a/TaxBlaster/models/TaxBlaster.zen b/TaxBlaster/models/TaxBlaster.zen new file mode 100644 index 0000000..52f1f77 --- /dev/null +++ b/TaxBlaster/models/TaxBlaster.zen @@ -0,0 +1,39 @@ +zenModel TaxBlasterDataModel + + dataModel TaxBlasterDataModel + + structure TaxFiling + filingID : long + taxpayer : reference to Person + jurisdiction : string + year : int + period : int + currency : CurrencyCodeEnum + grossIncome : decimal + taxLiability : decimal + status : TaxFilingStatusEnum + + structure Person + taxpayerID : long + lastName : string + firstName : string + otherNames : string* + netWorth : decimal + netWorthSpecialValue : SpecialValueEnum + preferredLanguage : string + DOB : string + taxFilings : reference to TaxFiling* + addresses : containing Address* + + structure Address + street1 : string + street2 : string + city : string + stateOrProvince : string + postalCode : string + country : string + + simpleType CurrencyCodeEnum defined as string + simpleType TaxFilingStatusEnum defined as string + simpleType SpecialValueEnum defined as string + \ No newline at end of file From 1468eff93052a6da0e29a251f737d1a590f83448 Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Fri, 27 Mar 2015 18:14:34 -0400 Subject: [PATCH 3/6] Updated data model --- TaxBlaster/models/TaxBlaster.zen | 47 +++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/TaxBlaster/models/TaxBlaster.zen b/TaxBlaster/models/TaxBlaster.zen index 52f1f77..4139dd0 100644 --- a/TaxBlaster/models/TaxBlaster.zen +++ b/TaxBlaster/models/TaxBlaster.zen @@ -24,6 +24,7 @@ zenModel TaxBlasterDataModel DOB : string taxFilings : reference to TaxFiling* addresses : containing Address* + ssn: SocialSecurityNumber structure Address street1 : string @@ -32,8 +33,46 @@ zenModel TaxBlasterDataModel stateOrProvince : string postalCode : string country : string + - simpleType CurrencyCodeEnum defined as string - simpleType TaxFilingStatusEnum defined as string - simpleType SpecialValueEnum defined as string - \ No newline at end of file + enum int TaxFilingStatusEnum + DRAFT + PENDING_CPA_REVIEW + PENDING_CLIENT_REVIEW + FILED + AMENDED + CLOSED + + enum int SpecialValueEnum + NORMAL_VALUE : 0 + NOT_AVAILABLE : -65534 + NOT_APPLICABLE : -65533 + RESTRICTED : -65532 + + enum string CurrencyCodeEnum + EUR : "Euro" + CAD : "Canadian Dollar" + USD : "US Dollar" + CHF : "Swiss Franc" + JPY : "Japanese Yen" + INR : "Indian Rupee" + BRL : "Brazilian Real" + + + simpleType SocialSecurityNumber defined as string + matching regex '999-99-9999' + + simpleType DayOfYear1 as integer + valueRange from '1' to '365' + + simpleType DayOfYear defined as integer + with valueRange from minimum '1' up to maximum '365' inclusive + + simpleType WholesaleQuantity as integer + with valueRange from minimum '1000' + + simpleType FractionalValue as decimal + with valueRange from '0' exclusive up to '1' exclusive + + simpleType ChildTravelerAge defined as integer + valueRange up to '12' \ No newline at end of file From 7c868717362ad1ffe07de9f6949af1944004ab0c Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Sat, 28 Mar 2015 10:32:10 -0400 Subject: [PATCH 4/6] Add example data --- .../DataModelAdditions.txt} | 125 +++++++----------- .../example-person-collection.json | 21 +++ .../example-data/example-person-object.json | 8 ++ .../example-taxfiling-collection.json | 23 ++++ .../example-taxfiling-object.json | 8 ++ .../examples-for-post-methods.txt | 8 ++ 6 files changed, 116 insertions(+), 77 deletions(-) rename TaxBlaster/{models/TaxBlaster.zen => data/DataModelAdditions.txt} (54%) create mode 100644 TaxBlaster/example-data/example-person-collection.json create mode 100644 TaxBlaster/example-data/example-person-object.json create mode 100644 TaxBlaster/example-data/example-taxfiling-collection.json create mode 100644 TaxBlaster/example-data/example-taxfiling-object.json create mode 100644 TaxBlaster/example-data/examples-for-post-methods.txt diff --git a/TaxBlaster/models/TaxBlaster.zen b/TaxBlaster/data/DataModelAdditions.txt similarity index 54% rename from TaxBlaster/models/TaxBlaster.zen rename to TaxBlaster/data/DataModelAdditions.txt index 4139dd0..defe9c5 100644 --- a/TaxBlaster/models/TaxBlaster.zen +++ b/TaxBlaster/data/DataModelAdditions.txt @@ -1,78 +1,49 @@ -zenModel TaxBlasterDataModel - - dataModel TaxBlasterDataModel - - structure TaxFiling - filingID : long - taxpayer : reference to Person - jurisdiction : string - year : int - period : int - currency : CurrencyCodeEnum - grossIncome : decimal - taxLiability : decimal - status : TaxFilingStatusEnum - - structure Person - taxpayerID : long - lastName : string - firstName : string - otherNames : string* - netWorth : decimal - netWorthSpecialValue : SpecialValueEnum - preferredLanguage : string - DOB : string - taxFilings : reference to TaxFiling* - addresses : containing Address* - ssn: SocialSecurityNumber - - structure Address - street1 : string - street2 : string - city : string - stateOrProvince : string - postalCode : string - country : string - - - enum int TaxFilingStatusEnum - DRAFT - PENDING_CPA_REVIEW - PENDING_CLIENT_REVIEW - FILED - AMENDED - CLOSED - - enum int SpecialValueEnum - NORMAL_VALUE : 0 - NOT_AVAILABLE : -65534 - NOT_APPLICABLE : -65533 - RESTRICTED : -65532 - - enum string CurrencyCodeEnum - EUR : "Euro" - CAD : "Canadian Dollar" - USD : "US Dollar" - CHF : "Swiss Franc" - JPY : "Japanese Yen" - INR : "Indian Rupee" - BRL : "Brazilian Real" - - - simpleType SocialSecurityNumber defined as string - matching regex '999-99-9999' - - simpleType DayOfYear1 as integer - valueRange from '1' to '365' - - simpleType DayOfYear defined as integer - with valueRange from minimum '1' up to maximum '365' inclusive - - simpleType WholesaleQuantity as integer - with valueRange from minimum '1000' - - simpleType FractionalValue as decimal - with valueRange from '0' exclusive up to '1' exclusive - - simpleType ChildTravelerAge defined as integer + structure Index + people : reference to Person* + taxFilings : reference to TaxFiling* + +// How do we translate ERwin domains? We might be able to translate +// them to a structure or a user defined simple type that we can convert +// to enums? + + enum int TaxFilingStatusEnum + DRAFT + PENDING_CPA_REVIEW + PENDING_CLIENT_REVIEW + FILED + AMENDED + CLOSED + + enum int SpecialValueEnum + NORMAL_VALUE : 0 + NOT_AVAILABLE : -65534 + NOT_APPLICABLE : -65533 + RESTRICTED : -65532 + + enum string CurrencyCodeEnum + EUR : "Euro" + CAD : "Canadian Dollar" + USD : "US Dollar" + CHF : "Swiss Franc" + JPY : "Japanese Yen" + INR : "Indian Rupee" + BRL : "Brazilian Real" + + + simpleType SocialSecurityNumber defined as string + matching regex '999-99-9999' + + simpleType DayOfYear1 as integer + valueRange from '1' to '365' + + simpleType DayOfYear defined as integer + with valueRange from minimum '1' up to maximum '365' inclusive + + simpleType WholesaleQuantity as integer + with valueRange from minimum '1000' + + simpleType FractionalValue as decimal + with valueRange from '0' exclusive up to '1' exclusive + + simpleType ChildTravelerAge defined as integer valueRange up to '12' \ No newline at end of file diff --git a/TaxBlaster/example-data/example-person-collection.json b/TaxBlaster/example-data/example-person-collection.json new file mode 100644 index 0000000..c546830 --- /dev/null +++ b/TaxBlaster/example-data/example-person-collection.json @@ -0,0 +1,21 @@ +[ + "taxpayerID": "user1" + "lastName": "Smith" + "firstName": "John" + "otherNames": [ + "Jean Poupon" + ] + + "taxpayerID": "user2" + "lastName": "Williams" + "firstName": "Nancy" + + "taxpayerID": "user3" + "lastName": "Davis" + "firstName": "Elizabeth" + + "taxpayerID": "user4" + "lastName": "Johnson" + "firstName": "Robert" + +] \ No newline at end of file diff --git a/TaxBlaster/example-data/example-person-object.json b/TaxBlaster/example-data/example-person-object.json new file mode 100644 index 0000000..61fcb9d --- /dev/null +++ b/TaxBlaster/example-data/example-person-object.json @@ -0,0 +1,8 @@ +{ + "taxpayerID": "user1" + "lastName": "Smith" + "firstName": "John" + "otherNames": [ + "Jean Poupon" + ] +} \ No newline at end of file diff --git a/TaxBlaster/example-data/example-taxfiling-collection.json b/TaxBlaster/example-data/example-taxfiling-collection.json new file mode 100644 index 0000000..7f79822 --- /dev/null +++ b/TaxBlaster/example-data/example-taxfiling-collection.json @@ -0,0 +1,23 @@ +[ + "filingID": "taxFiling1" + "jurisdiction": "BURLINGAME" + "year": 2012 + "currency": "USD" + "grossIncome": 12345.67 + "taxLiability": 12.34 + + "filingID": "taxFiling2" + "jurisdiction": "CORCORAN" + "year": 2013 + "currency": "USD" + "grossIncome": 98765.43 + "taxLiability": 23.45 + + "filingID": "taxFiling3" + "jurisdiction": "CLAYTON" + "year": 2012 + "currency": "USD" + "grossIncome": 56789.12 + "taxLiability": 12.34 + +] \ No newline at end of file diff --git a/TaxBlaster/example-data/example-taxfiling-object.json b/TaxBlaster/example-data/example-taxfiling-object.json new file mode 100644 index 0000000..0baf5d9 --- /dev/null +++ b/TaxBlaster/example-data/example-taxfiling-object.json @@ -0,0 +1,8 @@ +{ + "filingID": "taxFiling1" + "jurisdiction": "" + "year": 2012 + "currency": "USD" + "grossIncome": 12345.67 + "taxLiability": 12.34 +} \ No newline at end of file diff --git a/TaxBlaster/example-data/examples-for-post-methods.txt b/TaxBlaster/example-data/examples-for-post-methods.txt new file mode 100644 index 0000000..e610fd0 --- /dev/null +++ b/TaxBlaster/example-data/examples-for-post-methods.txt @@ -0,0 +1,8 @@ +Create Person 1: +{"firstName":"John","lastName":"Smith"} + +Create Person 2: +'{"firstName":"Jack","lastName":"Johnson"} + +Create TaxFiling for Person 2 +{"jurisdiction":"HAW","grossIncome":100.10, "taxpayer":{"taxpayerID":2, "firstName":"Jack"}} From 3d20e13e2bba92cc26731f37bf307fbb576ec347 Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Sat, 28 Mar 2015 11:46:10 -0400 Subject: [PATCH 5/6] TaxBlaster data model imported ERwin --- TaxBlaster/models/TaxBlasterData.zen | 39 ++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 TaxBlaster/models/TaxBlasterData.zen diff --git a/TaxBlaster/models/TaxBlasterData.zen b/TaxBlaster/models/TaxBlasterData.zen new file mode 100644 index 0000000..52f1f77 --- /dev/null +++ b/TaxBlaster/models/TaxBlasterData.zen @@ -0,0 +1,39 @@ +zenModel TaxBlasterDataModel + + dataModel TaxBlasterDataModel + + structure TaxFiling + filingID : long + taxpayer : reference to Person + jurisdiction : string + year : int + period : int + currency : CurrencyCodeEnum + grossIncome : decimal + taxLiability : decimal + status : TaxFilingStatusEnum + + structure Person + taxpayerID : long + lastName : string + firstName : string + otherNames : string* + netWorth : decimal + netWorthSpecialValue : SpecialValueEnum + preferredLanguage : string + DOB : string + taxFilings : reference to TaxFiling* + addresses : containing Address* + + structure Address + street1 : string + street2 : string + city : string + stateOrProvince : string + postalCode : string + country : string + + simpleType CurrencyCodeEnum defined as string + simpleType TaxFilingStatusEnum defined as string + simpleType SpecialValueEnum defined as string + \ No newline at end of file From 6ce9885452eea7831db5b82dd9252833e834fac2 Mon Sep 17 00:00:00 2001 From: Tanya Fesenko Date: Sat, 28 Mar 2015 12:23:12 -0400 Subject: [PATCH 6/6] Update TaxBlaster model --- TaxBlaster/models/TaxBlasterData.zen | 44 +++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/TaxBlaster/models/TaxBlasterData.zen b/TaxBlaster/models/TaxBlasterData.zen index 52f1f77..1c1ffc6 100644 --- a/TaxBlaster/models/TaxBlasterData.zen +++ b/TaxBlaster/models/TaxBlasterData.zen @@ -1,7 +1,6 @@ zenModel TaxBlasterDataModel dataModel TaxBlasterDataModel - structure TaxFiling filingID : long taxpayer : reference to Person @@ -24,6 +23,7 @@ zenModel TaxBlasterDataModel DOB : string taxFilings : reference to TaxFiling* addresses : containing Address* + ssn : SocialSecurityNumber structure Address street1 : string @@ -33,7 +33,43 @@ zenModel TaxBlasterDataModel postalCode : string country : string - simpleType CurrencyCodeEnum defined as string - simpleType TaxFilingStatusEnum defined as string - simpleType SpecialValueEnum defined as string + simpleType SocialSecurityNumber defined as string + matching regex "999-99-9999" + + enum int TaxFilingStatusEnum + DRAFT + PENDING_CPA_REVIEW + PENDING_CLIENT_REVIEW + FILED + AMENDED + CLOSED + + enum int SpecialValueEnum + NORMAL_VALUE : 0 + NOT_AVAILABLE : -65534 + NOT_APPLICABLE : -65533 + RESTRICTED : -65532 + + enum string CurrencyCodeEnum + EUR : "Euro" + CAD : "Canadian Dollar" + USD : "US Dollar" + CHF : "Swiss Franc" + JPY : "Japanese Yen" + INR : "Indian Rupee" + BRL : "Brazilian Real" + simpleType DayOfYear1 as integer + valueRange from "1" to "365" + + simpleType DayOfYear defined as integer + with valueRange from minimum "1" up to maximum "365" inclusive + + simpleType WholesaleQuantity as integer + with valueRange from minimum "1000" + + simpleType FractionalValue as decimal + with valueRange from "0" exclusive up to "1" exclusive + + simpleType ChildTravelerAge defined as integer + valueRange up to "12" \ No newline at end of file