Wiki Markup |
---|
h4. This page is for json schema properties of type "string" who may (or may not) need a regular expression to help define allowed instances.
Page will be organized into json schemas, and will list all "string" type properties, logical rules for defining those properties, if they need a pattern, and a suggested regular expression for the properties that do need a pattern.
h4. {toc}
h2. Entity.json
h5. name
Logical Rules
* must be a sting
* can be more than one word
* can have letters
* can have symbols
Needs Pattern = no
h5. description
Logical Rules
* must be a string
Needs Pattern = no
h5. id
Logical Rules
* represented as a long
* can only be digits
* must be a size that will fit into a java long
* will never be a negative
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\d{1,7}"
{code}
h5. uri
Logical Rules
* will be "synapse.sagebase.org/#"
* after the pound will be the type of entity, etc
Needs Pattern = yes
{code}
Suggested Regular Expression = "^(http:////synapse.sagebase.org/#).+"
{code}
h5. version
Logical Rules
* will be in format 1.0.0
* so numbers, period, numbers, period, numbers
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\d{1,2}\\.\\d{1,2}\\.\\d{1,2}"
{code}
h5. etag
Logical Rules
* made up of a db long
* default is 0
* can only be digits
* must fit in a java long
* will never be a negative
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\d{1,7}"
{code}
h5. createdOn
Logical Rules
* in the form of java.util.Date
* string must conform to that structure
* example from project modifiedOn": "2011-12-07T15:01:15.528-08:00",
* example from project"createdOn": "2011-12-07T15:01:15.528-08:00",
Needs Pattern = yes
{code}
Suggested Regular Expression = "2\\d{3}\\-[01]\\d{1}\\-[0123]\\d{1}T[012]\\d{1}:\\d{2}:\\d{2}\\.\\d{3}\\-\\d{2}:\\d{2}"
{code}
h5. modifiedOn
Logical Rules
* java.util.Date
* string must conform to that structure
* example from project modifiedOn": "2011-12-07T15:01:15.528-08:00",
* example from project"createdOn": "2011-12-07T15:01:15.528-08:00",
Needs Pattern = yes
{code}
Suggested Regular Expression = "2\\d{3}\\-[01]\\d{1}\\-[0123]\\d{1}T[012]\\d{1}:\\d{2}:\\d{2}\\.\\d{3}\\-\\d{2}:\\d{2}"
{code}
h5. createdBy
Logical Rules
* in the form of an email address
* can also be a single word
* letters and supported email characters only
* no whitespace
* example is admin@sagebase.org
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\S+"
{code}
h5. modifiedBy
Logical Rules
* in the form of an email address
* can also be a single word
* letters and supported email characters only
* no whitespace
* example is admin@sagebase.org
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\S+"
{code}
h5. annotations
Logical Rules
* are strings
* can be different number of words
* can contain symbols
Needs Pattern = no
h5. accessControlList
Logical Rules
* example "/project/17496/acl"
* example"/dataset/17497/acl"
* must be a front-slash, supported type, front-slash, id, "acl"
Needs Pattern = yes
{code}
Suggested Regular Expression = "/(dataset|layer|location|project|preview|eula|agreement|folder|analysis|step|code)/\\d{1,7}/acl"
{code}
h5. parentId
Logical Rules
* represented by a long
* will never be negative
* must be digits only
* must fit into java long
Needs Pattern = yes
{code}
Suggested Regular Expression = "\\d{1,7}"
{code}
h2. S3Token.json
h5. path
Logical Rules
* should be "https://console.aws.amazon.com/s3/home"
Needs Pattern = yes
Suggested Regular Expression
h5. md5
Logical Rules
* needs to be 32 digits
* needs to be all lowercase a-f and 0-9
* python example \^\[a-z0-9\]{32}$/i
* John's example \[0-9a-fA-\F\]\{32\}47f4cc0b788002e8b264881beb4ec08b
beaa28899c52f9df66094c4267876e78
Needs Pattern = yes
Suggested Regular Expression
h5. contentType
Logical Rules
* This is not something from aws, but something from services
* is the MIME type
* "text/html" is one
* can also be application, audio, image, message, multipart, text, video, x-token
Needs Pattern = yes
Suggested Regular Expression
h5. accessId
Logical Rules
* 20 characters
* all numbers and capitol letters (A-Z)
* no white spaces
* found on site can be between 16 to 32 characters
Needs Pattern = yes
Suggested Regular Expression
h5. secretKey
Logical Rules
* letters, both lower and upper case
* A to Z
* numbers
* random characters like + and /
* 40 characters long
* no white spaces
Needs Pattern = yes
Suggested Regular Expression
h5. securityToken
Logical Rules
* found two examples
* isfakeSessionToken
* AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L
To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z
rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp
Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE
Needs Pattern = yes
Suggested Regular Expression
h5. bucket
Logical Rules
* naming rules for the buckets
* can contain lowercase letters, numbers, periods, underscores and dashes
* must start with a number or letter
* must be between 3 and 255 characters long
* must not be formatted as an ip address like 564.442.4.4
Needs Pattern = yes
Suggested Regular Expression
h5. presignedUrl
Logical Rules
* generated example
* [https://bucket.s3.amazonaws.com/key?Expires=1323383935&AWSAccessKeyId=AKIAJ32QSEKRO5UEMDWQ&Signature=4%2Fyjg%2FOdHNtBtmaM8PoGOqGfWTA%3D]
* example from a test
* [https://s3.amazonaws.com/devdata.sagebase.org/9876/unc.edu_COAD.AgilentG4502A_07_3.Level_2.2.0.0.tar.gz?Expires=1323468021&x-amz-security-token=fakeSessionToken&AWSAccessKeyId=fakeAccessKeyId&Signature=OuTEUoJklhzL37jFRX9pRK1RcVg%3D]
* [https://s3.amazonaws.com/devdata.sagebase.org/9876/unc.edu_COAD.AgilentG4502A_07_3.Level_2.2.0.0.tar.gz?Expires=1323468151&x-amz-security-token=fakeSessionToken&AWSAccessKeyId=fakeAccessKeyId&Signature=Jt1fXYZFO5e8pyKJ%2B%2B9YsFiFY6I%3D]
Needs Pattern = yes
Suggested Regular Expression |
Page Comparison
Manage space
Manage content
Integrations
App links