Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Table of Contents

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.

...

Entity.json

...

name

Logical Rules

  • must be a sting
  • can be more than one word
  • can have letters
  • can have symbols

Needs Pattern = no

description

Logical Rules

  • must be a string

Needs Pattern = no

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 Block
Suggested Regular Expression = "\\d{1,7}"
{code}

h5. uri

Logical Rules
* will be 
uri

Logical Rules

  • will be "synapse.sagebase.org/#"

...

  • after

...

  • the

...

  • pound

...

  • will

...

  • be

...

  • the

...

  • type

...

  • of

...

  • entity,

...

  • etc

...

Needs

...

Pattern

...

=

...

yes

...

Code Block
Suggested Regular Expression = "^(http:////synapse.sagebase.org/#).+"
{code}

h5. version

Logical Rules
* will be in format 
version

Logical Rules

  • will be in format 1.0.0

...

  • so

...

  • numbers,

...

  • period,

...

  • numbers,

...

  • period,

...

  • numbers

...

Needs

...

Pattern

...

=

...

yes

...

Code Block
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}
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 Block
Suggested Regular Expression = "\\d{1,7}"
{code}

h5. createdOn

Logical Rules
* in the form of 
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 Block
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
* 
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 Block
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}
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 Block
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}
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 Block
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 
annotations

Logical Rules

  • are strings
  • can be different number of words
  • can contain symbols

Needs Pattern = no

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 Block
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}
parentId

Logical Rules

  • represented by a long
  • will never be negative
  • must be digits only
  • must fit into java long

Needs Pattern = yes

Code Block
Suggested Regular Expression = "\\d{1,7}"
{code}

h2. 

S3Token.json

...

path

Logical Rules

  • should be "https://console.aws.amazon.com/s3/home"

...

Needs

...

Pattern

...

=

...

yes

Code Block

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\= "https://console.aws.amazon.com/s3/home"
md5

Logical Rules

  • needs to be 32 digits
  • needs to be all a-f and 0-9

Needs Pattern = yes

Needs Pattern = yes

Code Block

Suggested Regular Expression = "^[a-fA-F0-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
* "
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

...

Code Block

Suggested Regular Expression 
h5. accessId

Logical Rules
* 20 characters
* all numbers and capitol letters = "(text/html|application/html|audio/html|image/html|message/html|multipart/html|text/html|video/html|x-token/html)"      
accessId

Logical Rules

  • 20 characters
  • all numbers and capitol letters (A-Z)

...

  • no

...

  • white

...

  • spaces

...

  • found

...

  • on

...

  • aws site

...

  • can

...

  • be

...

  • between

...

  • 16

...

  • to

...

  • 32

...

  • characters, but I think I misinterpreted this

Needs Pattern = yes

Code Block

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

= "^[0-9A-Z]{20}$"
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

Code Block
Suggested Regular Expression 
h5. securityToken

Logical Rules
* found two examples
* isfakeSessionToken
* = "^\\S{40}$"
securityToken

Logical Rules

  • found two examples
  • isfakeSessionToken
  • AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L

...


  •        To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z
           rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp

...


  •        Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE

...

  • looks like these can vary in length
  • one word, no whitespace
  • allow numbers, letters, and random characters

Needs Pattern = yes

Code Block

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 = "\\S+"
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

...

  • ip issue not supported, tired several variations, including greedy
  • the exact question is can it take x amount of characters and compare them against two semi-complex expressions
  • having trouble finding example online

Needs Pattern = yes

Suggested Regular Expression

presignedUrl

Logical Rules

...

  • example

...

  • from

...

  • a

...

  • test

...

...

...

Needs

...

Pattern

...

=

...

yes

...

Suggested

...

Regular

...

Expression