Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions TaxBlaster/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>TaxBlaster</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.modelsolv.reprezen.ui.RepreZenBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.modelsolv.reprezen.zenNature</nature>
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
</natures>
</projectDescription>
49 changes: 49 additions & 0 deletions TaxBlaster/data/DataModelAdditions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
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'
21 changes: 21 additions & 0 deletions TaxBlaster/example-data/example-person-collection.json
Original file line number Diff line number Diff line change
@@ -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"

]
8 changes: 8 additions & 0 deletions TaxBlaster/example-data/example-person-object.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"taxpayerID": "user1"
"lastName": "Smith"
"firstName": "John"
"otherNames": [
"Jean Poupon"
]
}
23 changes: 23 additions & 0 deletions TaxBlaster/example-data/example-taxfiling-collection.json
Original file line number Diff line number Diff line change
@@ -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

]
8 changes: 8 additions & 0 deletions TaxBlaster/example-data/example-taxfiling-object.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"filingID": "taxFiling1"
"jurisdiction": ""
"year": 2012
"currency": "USD"
"grossIncome": 12345.67
"taxLiability": 12.34
}
8 changes: 8 additions & 0 deletions TaxBlaster/example-data/examples-for-post-methods.txt
Original file line number Diff line number Diff line change
@@ -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"}}
75 changes: 75 additions & 0 deletions TaxBlaster/models/TaxBlasterData.zen
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
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

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"