text:
Fifty Shades Freed (film)
From Wikipedia, the free encyclopedia
Jump to: navigation, search
Fifty Shades Freed
Theatrical release poster
Directed by
James Foley
Produced by
Michael De Luca
E. L. James
Dana Brunetti
Marcus Viscidi
Screenplay by
Niall Leonard
Based on
Fifty Shades Freed
by E. L. James
Starring
Dakota Johnson
Jamie Dornan
Eric Johnson
Rita Ora
Luke Grimes
Victor Rasuk
Jennifer Ehle
Arielle Kebbel
Marcia Gay Harden
Music by
Danny Elfman
Cinematography
John Schwartzman
Edited by
Richard Francis-Bruce
Debra Neil-Fisher
Production
company
Perfect World Pictures
Michael De Luca Productions
Trigger Street Productions
Distributed by
Universal Pictures
Release date
February 6, 2018 (2018-02-06) (Paris)
February 9, 2018 (2018-02-09) (United States)
Running time
105 minutes[1]
Country
United States
Language
English
Budget
$55 million[2]
Box office
$266.9 million[2]
Fifty Shades Freed is a 2018 American erotic romantic drama film directed by James Foley and written by Niall Leonard, based on the novel of the same name by E. L. James. It is the third and final installment in the Fifty Shades film series after Fifty Shades of Grey (2015) and Fifty Shades Darker (2017). The film stars Dakota Johnson and Jamie Dornan as Anastasia Steele and Christian Grey, respectively, and follows the newlywed couple as they must deal with the sins of their past when Ana's former boss (Eric Johnson) begins to stalk her.
Principal photography on Fifty Shades Freed began simultaneously with Darker in February 2016 in Paris and Vancouver. The film was released in the United States on February 9, 2018; it had a limited IMAX release. It has grossed $266 million worldwide and, like its previous two predecessors, received negative reviews, with criticism aimed at its screenplay and performances.
Contents
[hide]
1 Plot
2 Cast
3 Production
3.1 Filming
4 Release
5 Music
6 Reception
6.1 Box office
6.2 Critical response
7 References
8 External links
Plot[edit]
Newlyweds Christian Grey and Anastasia 'Ana' Steele cut short their exotic honeymoon and return to Seattle after receiving news of a break-in at Christian's corporate headquarters. Some computer files were stolen and security camera tapes identify the perpetrator as Jack Hyde, Ana's former boss who was fired for sexual assault. Meanwhile, Ana is introduced to her new personal security team.
Christian surprises Ana with a new house and has hired architect Gia Matteo to rebuild it. Ana is dismayed when Gia, an attractive young woman, openly flirts with Christian in Ana's presence. Ana, jealous, privately threatens to dismiss Gia if she continues her flirtatious behavior, forcing her to stop.
When Christian is away on a business trip, Ana disregards his wishes that she stay at home, and goes out for a drink with her friend, Kate Kavanagh. Kate, who is dating Christian's younger brother, Elliot, confides to Ana that their relationship may be fizzling; Elliot is working closely with Gia, the architect, and Kate is suspicious about their relationship. When Ana returns home, she encounters Jack Hyde, who attempts to kidnap her. Ana's security team subdue him as he holds Ana hostage and he is arrested. After an argument with Christian about her having sneaked out to see Kate, Ana berates Christian for being overly controlling and possessive and demands more freedom. Soon after, Christian surprises Ana with a trip to Aspen, bringing along Kate, Elliot, Mia, and José.
Christian and Ana continue with their erotic sexual experimentation, but matters become complicated when Ana announces she is pregnant. Christian is deeply disturbed, saying he had other plans for their early years together. He leaves, going on a night-long drunken bender. The next day, Ana discovers that Christian had recently contacted his ex-lover and former BDSM dominant, Elena Lincoln.
Shortly after, Jack Hyde, released on a $500,000 bond, phones Ana demanding a ransom for Mia, Christian's abducted sister. Hyde demands $5,000,000 in cash in two hours or Mia will be killed. He warns Ana to tell no one and to bring the money alone. Ana takes some cash and a revolver from the house safe, then goes to the bank to withdraw the full amount. The suspicious bank manager calls Christian. He thinks Ana is leaving him but then notices the coincidence of Hyde's recent release and Ana's sudden large cash withdrawal. Hyde instructs Ana to get into a car parked in the alley and to hand over her phone to the driver to discard. Ana tricks Hyde by taking the bank manager's phone. She exits the back entrance to discover that the driver and Jack's accomplice is her co-worker, Liz.
Ana arrives at the drop-off site with the money. Hyde, psychotic and vengeful, attacks Ana, kicking her abdomen. Liz tries to stop Jack as Ana pulls out the revolver and shoots Hyde in the leg. Christian and his security team, who electronically tracked Ana's cell phone, arrive and apprehend Hyde and Liz. Ana blacks out as she hears Christian's voice.
Ana awakens three days later in the hospital with Christian at her side. Though angry at Ana's recklessness and still anxious about fatherhood, Christian realizes how important their baby is to her, and they reconcile. Christian's adoptive mother, Grace, assures Christian that Ana will not leave him. Ana returns home the next day. Christian's private investigator, Welch, reports that Christian and Hyde shared the same foster family. It is also learned that Hyde blackmailed Liz into being his accomplice. Christian and Ana later locate where Christian's birth mother is buried; they visit and Christian lays flowers on her grave.
Two years later, Christian and Ana have a son called Teddy, and Ana is pregnant with their second child.
Cast[edit]
Dakota Johnson as Anastasia 'Ana' Steele-Grey
Jamie Dornan as Christian Grey
Eric Johnson as Jack Hyde, Ana’s former boss and stalker
Eloise Mumford as Katherine Kavanagh, Ana’s best friend and Elliot Grey’s fiancée
Rita Ora as Mia Grey, adoptive daughter of Carrick Grey and Dr. Grace Trevelyan Grey and younger sister of Christian and Elliot Grey
Luke Grimes as Elliot Grey, older brother of Christian and Mia Grey and Katherine’s fiancé
Victor Rasuk as José Rodriguez, one of Anastasia's friends
Max Martini as Jason Taylor, Christian’s bodyguard
Jennifer Ehle as Carla May Wilks, Anastasia's mother.
Marcia Gay Harden as Grace Trevelyan Grey, Christian’s adoptive mother
Bruce Altman as Jerry Roach
Arielle Kebbel as Gia Matteo, the architect recommended by Elliot Grey to design Anastasia and Christian's future home
Callum Keith Rennie as Ray, Anastasia's former stepfather
Robinne Lee as Ros Bailey, Christian's second in command
Brant Daugherty as Luke Sawyer, Ana’s bodyguard
Fay Masterson as Gail Jones, Christian's housekeeper
Amy Price-Francis as Liz Morgan, Jack's accomplice
Ashleigh LaThrop as Hannah, Ana's co-worker and friend
Tyler Hoechlin as Boyce Fox, popular author whose books are published by SIP.
Hiro Kanagawa as Detective Clark
Production[edit]
A film adaptation of the first book was produced by Michael De Luca Productions,[3][4] with Universal Pictures and Focus Features securing the rights to the trilogy in March 2012.[3] At a fan screening in New York City on February 6, director Sam Taylor-Johnson announced that the book sequels Fifty Shades Darker and Fifty Shades Freed would also be adapted, with the first to be released in 2016.[5] Right after the announcement, Taylor-Johnson told Digital Spy that, "It's not my decision [to return], and I haven't been privy to any of the discussions."[6] On November 12, 2015, TheWrap confirmed that James Foley would direct both sequels which would be shot back-to-back in 2016, with Niall Leonard writing the script and Michael De Luca and Dana Brunetti returning to produce along with E. L. James and Marcus Viscidi.[7] Dakota Johnson and Jamie Dornan would also return for lead roles.[7] On February 8, 2016, Arielle Kebbel was cast in the film to play Gia Matteo, a beautiful architect who is hired by Christian to build his home.[8] On February 12, 2016, Eric Johnson was cast to play Jack Hyde, Ana's boss at SIP and stalker.[9] On February 20, 2016, Brant Daugherty signed on to play Sawyer, the personal body guard for Anastasia Steele.[10]
Filming[edit]
In November 2015, Universal Studios announced that Fifty Shades Darker and this film would be shot back-to-back with principal photography scheduled to commence in early 2016.[11] Filming began in Paris and Vancouver from February 9, 2016, to July 12, 2016, under the working title, "Further Adventures of Max and Banks 2 & 3."[12][13][14]
Release[edit]
Fifty Shades Freed was released on February 9, 2018, by Universal Pictures.[15] A teaser trailer was released on September 10, 2017,[16] with a theatrical trailer being released later on November 6.[17]
Music[edit]
The lead single from the film's soundtrack, "For You", performed by Rita Ora and Liam Payne, was released on January 5, 2018. The soundtrack's track list was released on January 8, 2018, including artists Julia Michaels, Sia, Jessie J, Black Atlass, Ellie Goulding, Hailee Steinfeld, Dua Lipa, and Miike Snow on the 22-song album.[18]
Reception[edit]
Box office[edit]
As of February 18, 2018[update], Fifty Shades Freed has grossed $76.1 million in the United States and Canada, and $190.8 million in other territories, for a worldwide total of $266.9 million, against a production budget of $55 million.[2]
In the United States and Canada, Fifty Shades Freed was released alongside Peter Rabbit and The 15:17 to Paris, and was projected to gross $37–40 million from 3,768 theaters in its opening weekend.[19] It made $5.6 million from Thursday night previews, down 2% from the $5.7 million made by Fifty Shades Darker the previous year. It ended up making $38.6 million over the weekend, the lowest of the trilogy but still enough to take first place at the box office.[20] The film grossed $10.8 million on Valentine's Day, marking the third-highest amount for when the holiday fell on a weekday, behind The Vow ($11.6 million in 2012) and Darker ($11 million), bringing its five-day gross to $56.1 million.[21] In its second weekend the film made $16.9 million, dropping 56% (the same as the previous film) and finishing third behind newcomer Black Panther and Peter Rabbit.[22]
Worldwide, the film was expected to make $80–90 million from 57 countries, including France, Germany, the UK, Australia, Brazil, Mexico and Japan, in its first three days for a worldwide debut of $113–130 million.[23] It ended up grossing $98.1 million from overseas for global debut of $136.9 million; it marked a 7% decrease from the previous film but still finished first in 54 of the 57 markets. Its leading countries were Germany ($10.7 million), the United Kingdom ($8.8 million) and France ($8.7 million).[24]
Critical response[edit]
On review aggregator website Rotten Tomatoes, the film has an approval rating of 11% based on 134 reviews, and an average rating of 3.1/10. The website's critical consensus reads, "Fifty Shades Freed brings its titillating trilogy to a clumsy conclusion, making for a film franchise that adds up to a distinctly dissatisfying ménage à trois."[25] On Metacritic, the film has a weighted average score of 31 out of 100 based on 41 critics, indicating "generally unfavorable reviews."[26] Audiences polled by CinemaScore gave the film an average grade of "B+" on an A+ to F scale, the same score earned by Darker, while comScore reported that 56% of females (who made up 81% of the opening weekend) gave the film a "definite recommend".[20]
Writing for Variety, Guy Lodge was critical of the film, saying "Indeed, a sex-free, PG-13 version of Freed could be cut without shedding a second of narrative coherence, such as it is; one could ask what the point of that would be, though similar queries might be leveled at the film as it stands."[27] Rolling Stone's Peter Travers gave the film zero out of four, stating "With this last entry, we have officially hit the bottom of the barrel. Whips, chains, butt plugs and nipple clips are nothing compared to the sheer torture of watching this movie."[28] Robbie Collin from The Telegraph gave the film one out of five stars, and wrote "This is a film in which one of the more emotionally detailed performances is given by a product-placement Audi."[29]
Jeannette Catsoulis, writing for The New York Times, found the film to be significantly inferior to Kim Basinger's 9½ Weeks, stating: "Layering a damp-squib thriller subplot beneath what appears to be an ad campaign for the one-percent lifestyle, the returning director and screenwriter test the newly married couple with an inconvenient pregnancy and an unconvincing car chase. There’s an out-of-left-field abduction and a marital tiff over email addresses; but these narrative fragments, lazily tossed together alongside a neglected supporting cast, are no more than a flimsy causeway connecting bonking sessions."[30]
Conversely, IndieWire reviewer Manuela Lazic gave the film three out of four stars, saying "Finally, the Fifty Shades phenomenon has yielded a disarming comedy that makes this ridiculous material fun to watch."[31]
References[edit]
Jump up ^ "FIFTY SHADES FREED (18)". British Board of Film Classification. January 30, 2018. Retrieved February 5, 2018.
^ Jump up to: a b c "Fifty Shades Freed (2018)". Box Office Mojo. Retrieved February 18, 2018.
^ Jump up to: a b Fleming Jr, Mike (March 26, 2012). "Universal Pictures and Focus Features win Fifty Shades of Grey". Deadline.com. Retrieved February 9, 2015.
Jump up ^ Miller, Julie (July 10, 2012). "Fifty Shades of Grey Film Gets Oscar-Nominated Producers, Christian Grey–Casting Inspiration". Vanity Fair. Retrieved February 9, 2015.
Jump up ^ Schumann, Rebecka (February 6, 2015). "'Fifty Shades of Grey' Sequels Confirmed; Fans React To 'Fifty Shades Darker' And 'Fifty Shades Freed' Movie Announcement". International Business Times. Retrieved February 9, 2015.
Jump up ^ Dibdin, Emma (February 13, 2015). "Sam Taylor-Johnson on 50 Shades of Grey sequel: 'It's not my decision'". Digital Spy. Retrieved February 16, 2015.
^ Jump up to: a b Sneider, Jeff (November 12, 2015). "'Fifty Shades of Grey' Sequels to Shoot Back to Back, James Foley to Direct Both (Exclusive)". TheWrap. Retrieved November 15, 2015.
Jump up ^ Ford, Rebecca; Kit, Borys (February 8, 2016). "'Fifty Shades Freed' Adds 'Ballers' Actress Arielle Kebbel (Exclusive)". The Hollywood Reporter. Retrieved February 9, 2016.
Jump up ^ Kroll, Justin (February 12, 2016). "'Fifty Shades Darker' Adds 'The Knick's' Eric Johnson as Christian Grey's Rival (EXCLUSIVE)". Variety. Retrieved February 12, 2016.
Jump up ^ Evans, Greg (February 20, 2016). "Brant Daugherty Signs On For 'Fifty Shades Freed' Sawyer Role". Deadline.com. Retrieved February 21, 2016.
Jump up ^ Kroll, Justin (November 12, 2015). "'Fifty Shades of Grey' Sequels to Shoot Back-to-Back". Variety. Retrieved November 13, 2015.
Jump up ^ Richford, Rhonda (February 4, 2016). "'Fifty Shades Darker' to Shoot in Paris as Filming Rebounds After Attacks". The Hollywood Reporter. Retrieved February 4, 2016.
Jump up ^ Schumann, Rebecka (January 5, 2016). "'Fifty Shades Darker' Movie 2016 Production Schedule, Location And Possible Smaller Budget Revealed". International Business Times. Retrieved January 6, 2016.
Jump up ^ "'Fifty Shades Darker' Starts Filming After Delay Getting '50 Shades Of Grey' Sequel To Screens?". Fashion & Style. January 6, 2016. Archived from the original on February 17, 2016. Retrieved January 9, 2016.
Jump up ^ D'Alessandro, Anthony (April 23, 2015). "Universal Dates 'Fifty Shades' Sequels, 'Furious 8′; 'Pacific Rim 2′, 'Mummy' Moved Back — CinemaCon Update". Deadline.com. Retrieved February 9, 2016.
Jump up ^ Ramos, Dino-Ray (September 10, 2017). "Fifty Shades Freed' Trailer: Things Get Darker, Sexier & Soapier In Third Installment Of Franchise". Deadline.com. Retrieved September 10, 2017.
Jump up ^ Kyriazis, Stefan. "Fifty Shades Freed new and final TRAILER is coming: Watch it here first". Daily Express. Retrieved November 4, 2017.
Jump up ^ Brandle, Lars (January 8, 2018). "'Fifty Shades Freed' Track List: Sia, Ellie Goulding, Hailee Steinfeld & More". Billboard. Retrieved January 9, 2018.
Jump up ^ D'Alessandro, Anthony (January 18, 2018). "'Fifty Shades Freed' Looks To Lead Pre-Valentine's Day Weekend With Around $40M – B.O. Forecast". Deadline.com. Retrieved January 18, 2018.
^ Jump up to: a b D'Alessandro, Anthony (February 11, 2018). "'Fifty Shades Freed' Builds E.L. James Trilogy To $1 Billion Climax; 'Peter Rabbit' Bounces To $25M Opening". Deadline.com. Retrieved February 11, 2018.
Jump up ^ D'Alessandro, Anthony (February 15, 2018). "Fifty Shades Freed' Pops At Valentine's Day B.O. Before 'Black Panther' Attacks – Update". Deadline.com. Retrieved February 15, 2018.
Jump up ^ D'Alessandro, Anthony (February 18, 2018). "'Black Panther' Rips Apart Box Office Records: 3-Day Opening Rises To $194M+; 4-Day At $223M+". Deadline.com. Retrieved February 18, 2018.
Jump up ^ D'Alessandro, Anthony (February 7, 2018). "'Fifty Shades Freed' Worldwide Opening Weekend Will Steam Franchise Past $1 Billion – B.O. Preview". Deadline.com. Retrieved February 7, 2018.
Jump up ^ Tartaglione, Nancy (February 11, 2018). "'Fifty Shades Freed' Collars $98M Overseas; 'Jumanji' Now Sony's #3 WW Release Ever". Deadline.com. Retrieved February 11, 2018.
Jump up ^ "Fifty Shades Freed (2018)". Rotten Tomatoes. Fandango. Retrieved February 19, 2018.
Jump up ^ "Fifty Shades Freed Reviews". Metacritic. CBS Interactive. Retrieved February 14, 2018.
Jump up ^ "Film Review: 'Fifty Shades Freed'". Variety. February 7, 2018. Retrieved February 8, 2018.
Jump up ^ Peter Travers (February 8, 2018). "'Fifty Shades Freed' Review: Welcome to the Most Painful 'Shades' of All". Rolling Stone. Retrieved February 8, 2018.
Jump up ^ Collin, Robbie (February 8, 2018). "Fifty Shades Freed review: painful, prissy, and even ropier than the last one". The Telegraph. Retrieved February 16, 2018.
Jump up ^ Catsoulis, Jeannette (February 8, 2018). "Review: Finally, the Audience Is 'Fifty Shades Freed'". The New York Times. Retrieved February 16, 2018.
Jump up ^ Lazic, Manuela (February 8, 2018). "'Fifty Shades Freed' Review: Finally, a Sex Comedy From a Franchise That Took Itself Too Seriously". IndieWire. Retrieved February 16, 2018.
External links[edit]
Official website
Official website
Fifty Shades Freed on IMDb
[show]
v
t
e
Fifty Shades franchise by E. L. James
Novels
Original trilogy
Fifty Shades of Grey
Fifty Shades Darker
Fifty Shades Freed
Retold
Grey: Fifty Shades of Grey as Told by Christian
Darker: Fifty Shades Darker as Told by Christian
Film series
Films
Fifty Shades of Grey
Fifty Shades Darker
Fifty Shades Freed
Music
Fifty Shades of Grey
"Earned It"
"Love Me like You Do"
"Crazy in Love (Remix)"
"I Put a Spell on You"
"Haunted (Michael Diamond Remix)"
"Beast of Burden"
"I'm on Fire"
"Witchcraft"
"I Know You"
Fifty Shades Darker
"I Don't Wanna Live Forever"
"Not Afraid Anymore"
"The Scientist"
Fifty Shades Freed
"For You"
"Capital Letters"
"Heaven"
Parodies
Fifty Shades of Oy Vey: A Parody
Spank! The Fifty Shades Parody
Fifty Shades of Black
[show]
v
t
e
Films directed by James Foley
Reckless (1984)
At Close Range (1986)
Who's That Girl (1987)
After Dark, My Sweet (1990)
Glengarry Glen Ross (1992)
Two Bits (1995)
Fear (1996)
The Chamber (1996)
The Corruptor (1999)
Confidence (2003)
Perfect Stranger (2007)
Fifty Shades Darker (2017)
Fifty Shades Freed (2018)
[show]
v
t
e
Films produced by Michael De Luca
Zathura: A Space Adventure (2005)
Ghost Rider (2007)
21 (2008)
Brothers (2009)
The Social Network (2010)
Drive Angry (2011)
Priest (2011)
Fright Night (2011)
Butter (2011)
Moneyball (2011)
The Sitter (2011)
Ghost Rider: Spirit of Vengeance (2012)
Captain Phillips (2013)
Dracula Untold (2014)
Fifty Shades of Grey (2015)
The Creed of Violence (2015)
Inferno (2016)
Fifty Shades Darker (2017)
Under the Silver Lake (2017)
Fifty Shades Freed (2018)
Retrieved from "https://en.wikipedia.org/w/index.php?title=Fifty_Shades_Freed_(film)&oldid=826597864"
Categories:
2018 films
English-language films
Fifty Shades
2010s erotic films
2010s romantic drama films
2010s sequel films
American erotic films
American films
American romantic drama films
American sequel films
BDSM in films
Erotic drama films
Erotic romance films
Adultery in films
Films about sexuality
Films based on British novels
Films based on romance novels
Films directed by James Foley
Films scored by Danny Elfman
Films shot in Paris
Films shot in Vancouver
Focus Features films
Pregnancy films
Universal Pictures films
Works based on Twilight series
Hidden categories:
Use mdy dates from November 2017
Articles containing potentially dated statements from February 2018
All articles containing potentially dated statements
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Article
Talk
Variants
Views
Read
Edit
View history
More
Search
Navigation
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version
Languages
Čeština
Dansk
Deutsch
Español
Euskara
فارسی
Français
한국어
Bahasa Indonesia
Italiano
עברית
Nederlands
日本語
Polski
Português
Română
Русский
Српски / srpski
Svenska
Türkçe
Українська
中文
Edit links
This page was last edited on 20 February 2018, at 00:48.
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
Privacy policy
About Wikipedia
Disclaimers
Contact Wikipedia
Developers
Cookie statement
Mobile view
Enable previews

key: html

type: local

value: div

attrs: id class

values: mw-page-base noprint

values: mw-head-base noprint

value: a

value: i

attrs: id class lang

values: firstHeading firstHeading en

values: siteSub noprint

values: jump-to-nav mw-jump

value: th

attrs: colspan class style

value: tr

value: img

attrs: alt src width height class data-file-width data-file-height

attrs: href class

value: td

attrs: colspan style

attrs: scope style

attrs: href title

value: li

values:
/wiki/Michael_De_Luca_Productions
mw-redirect
Michael De Luca Productions

values: plainlinks noexcerpt noprint asof-tag update

values:
/wiki/Average_rating
mw-redirect
Average rating

values:
nofollow
http://www.fiftyshadesmovie.com/
external text

values:
nofollow
http://www.imdb.com/title/tt4477536/
external text

attrs: alt src width height style srcset data-file-width data-file-height

values: Fifty Shades of Grey: Original Motion Picture Soundtrack

values: Fifty Shades Darker: Original Motion Picture Soundtrack

values: nowraplinks collapsible autocollapse navbox-inner

values:
/wiki/The_Creed_of_Violence
mw-redirect
The Creed of Violence

values: Category:Use mdy dates from November 2017

values: Category:Articles containing potentially dated statements from February 2018

values: Category:All articles containing potentially dated statements

values: Discussion about edits from this IP address [ctrl-alt-n]

values: A list of edits made from this IP address [ctrl-alt-y]

values: You are encouraged to create an account and log in; however, it is not mandatory

values: You're encouraged to log in; however, it's not mandatory. [ctrl-alt-o]

values:
/wiki/Fifty_Shades_Freed_(film)
View the content page [ctrl-alt-c]
c

values: Discussion about the content page [ctrl-alt-t]

values: p-namespaces navigation vectorTabs p-namespaces-label

values:
p-variants
navigation
vectorMenu emptyPortlet
p-variants-label

values: Past revisions of this page [ctrl-alt-h]

values: p-views navigation vectorTabs p-views-label

values:
p-cactions
navigation
vectorMenu emptyPortlet
p-cactions-label

values:
mw-wiki-logo
/wiki/Main_Page
Visit the main page

values:
/wiki/Main_Page
Visit the main page [ctrl-alt-z]
z

values: Featured content – the best of Wikipedia

values: Find background information on current events

values:
/wiki/Special:Random
Load a random article [ctrl-alt-x]
x

values: portal navigation p-navigation p-navigation-label

values: Guidance on how to use and edit Wikipedia

values: About the project, what you can do, where to find things

values: A list of recent changes in the wiki [ctrl-alt-r]

values: portal navigation p-interaction p-interaction-label

values: List of all English Wikipedia pages containing links to this page [ctrl-alt-j]

values: Recent changes in pages linked from this page [ctrl-alt-k]

values:
/wiki/Wikipedia:File_Upload_Wizard
Upload files [ctrl-alt-u]
u

values: A list of all special pages [ctrl-alt-q]

values: Permanent link to this revision of the page

values: Link to connected data repository item [ctrl-alt-g]

values: Printable version of this page [ctrl-alt-p]

values: Fifty Shades of Grey – Befreite Lust – German

values: پنجاه طیف آزادی (فیلم) – Persian

values: Cinquante nuances plus claires (film) – French

values: Cinquanta sfumature di rosso (film) – Italian

values: חמישים גוונים של שחרור (סרט) – Hebrew

values: フィフティ・シェイズ・フリード (映画) – Japanese

values: Пятьдесят оттенков свободы (фильм) – Russian

values: Педесет нијанси — ослобођени (филм) – Serbian

values: П'ятдесят відтінків свободи (фільм) – Ukrainian

values: 格雷的五十道陰影：自由 (電影) – Chinese

values: mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Fifty_Shades_Freed_film rootpage-Fifty_Shades_Freed_film skin-vector action-view


text:
JSON
From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
"Json" redirects here. For people with similar names, see J Son.
JSON
Filename extension
.json
Internet media type
application/json
Type code
TEXT
Uniform Type Identifier (UTI)
public.json
Type of format
Data interchange
Extended from
JavaScript
Standard
RFC 8259, ECMA-404
Website
json.org
In computing, JavaScript Object Notation or JSON (/ˈdʒeɪsən/ "Jason", /dʒeɪˈsɒn/)[1] is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value). It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.[2]
JSON is a language-independent data format. It was derived from JavaScript, but as of 2017[update] many programming languages include code to generate and parse JSON-format data. The official Internet media type for JSON is application/json. JSON filenames use the extension .json.
Douglas Crockford originally specified the JSON format in the early 2000s; two competing standards, RFC 8259 and ECMA-404, defined it in 2017. The ECMA standard describes only the allowed syntax, whereas the RFC covers some security and interoperability considerations.[3]
A restricted profile of JSON, known as I-JSON (short for "Internet JSON"), seeks to overcome some of the interoperability problems with JSON. It is defined in RFC 7493.[4]
Contents
[hide]
1 History
2 Data types, syntax and example
2.1 Example
2.2 Data portability issues
2.3 Using JSON in JavaScript
2.4 Unsupported native data types
3 Schema and metadata
3.1 JSON Schema
4 MIME type
5 Applications
5.1 JSON-RPC
5.2 AJAJ
6 Security considerations
7 Vulnerabilities in specific JSON parsers
8 Object references
9 Comparison with other formats
9.1 YAML
9.2 XML
9.3 Samples
9.3.1 JSON sample
9.3.2 YAML sample
9.3.3 XML samples
10 See also
11 Notes
12 References
13 External links
History[edit]
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (March 2018) (Learn how and when to remove this template message)
Douglas Crockford at the Yahoo Building. (2007)
JSON grew out of a need for stateful, real-time server-to-browser communication protocol without using browser plugins such as Flash or Java applets, the dominant methods used in the early 2000s.[citation needed]
Douglas Crockford first specified[5] and popularized the JSON format. The acronym originated at State Software, a company co-founded by Crockford and others in March 2001. The co-founders agreed to build a system that used standard browser capabilities and provided an abstraction layer for Web developers to create stateful Web applications that had a persistent duplex connection to a Web server by holding two HTTP connections open and recycling them before standard browser time-outs if no further data were exchanged. The co-founders had a round-table discussion and voted whether to call the data format JSML or JSON, as well as under what license type to make it available. Crockford, being inspired by the words of then President Bush, should also be credited with coming up with the "evil-doers" JSON license ("The Software shall be used for Good, not Evil.") in order to open-source the JSON libraries, but force (troll) corporate lawyers, or those who are overly pedantic, to seek to pay for a license from State. Chip Morningstar developed the idea for the State Application Framework at State Software.[6][7] On the other hand, this clause led to license compatibility problems of the JSON license with other open-source licenses.[8]
A precursor to the JSON libraries was used in a children's digital asset trading game project named Cartoon Orbit at Communities.com (the State co-founders had all worked at this company previously) for Cartoon Network, which used a browser side plug-in with a proprietary messaging format to manipulate DHTML elements (this system is also owned by 3DO). Upon discovery of early Ajax capabilities, digiGroups, Noosh, and others used frames to pass information into the user browsers' visual field without refreshing a Web application's visual context, realizing real-time rich Web applications using only the standard HTTP, HTML and JavaScript capabilities of Netscape 4.0.5+ and IE 5+. Crockford then found that JavaScript could be used as an object-based messaging format for such a system. The system was sold to Sun Microsystems, Amazon.com and EDS. The JSON.org Web site was launched in 2002. In December 2005, Yahoo! began offering some of its Web services in JSON.[9]
JSON was originally intended to be a subset of the JavaScript scripting language (specifically, Standard ECMA-262 3rd Edition—December 1999[10][need quotation to verify]) and is commonly used with Javascript, but it is a language-independent data format. Code for parsing and generating JSON data is readily available in many programming languages. JSON's website lists JSON libraries by language.
Though JSON was originally advertised and believed to be a strict subset of JavaScript and ECMAScript,[11][not in citation given] it inadvertently allows some unescaped characters in strings that are illegal in JavaScript and ECMAScript string literals. See Data portability issues below.
JSON itself became an ECMA international standard in 2013 as the ECMA-404 standard.[12] In the same year RFC 7158 used ECMA-404 as reference. In 2014 RFC 7159 became the main reference for JSON's internet uses (ex. MIME application/json), and obsoletes RFC 4627 and RFC 7158 (but preserving ECMA-262 and ECMA-404 as main references). In December 2017, RFC 7159 was made obsolete by RFC 8259.
Data types, syntax and example[edit]
JSON's basic data types are:
Number: a signed decimal number that may contain a fractional part and may use exponential E notation, but cannot include non-numbers such as NaN. The format makes no distinction between integer and floating-point. JavaScript uses a double-precision floating-point format for all its numeric values, but other languages implementing JSON may encode numbers differently.
String: a sequence of zero or more Unicode characters. Strings are delimited with double-quotation marks and support a backslash escaping syntax.
Boolean: either of the values true or false
Array: an ordered list of zero or more values, each of which may be of any type. Arrays use square bracket notation and elements are comma-separated.
Object: an unordered collection of name–value pairs where the names (also called keys) are strings. Since objects are intended to represent associative arrays,[12] it is recommended, though not required,[13] that each key is unique within an object. Objects are delimited with curly brackets and use commas to separate each pair, while within each pair the colon ':' character separates the key or name from its value.
null: An empty value, using the word null
Limited whitespace is allowed and ignored around or between syntactic elements (values and punctuation, but not within a string value). Only four specific characters are considered whitespace for this purpose: space, horizontal tab, line feed, and carriage return. In particular, the byte order mark must not be generated by a conforming implementation (though it may be accepted when parsing JSON). JSON does not provide syntax for comments.
Early versions of JSON (such as specified by RFC 4627) required that a valid JSON "document" must consist of only an object or an array type, which could contain other types within them.
Example[edit]
The following example shows a possible JSON representation describing a person.
{ "firstName": "John", "lastName": "Smith", "isAlive": true, "age": 27, "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021-3100" }, "phoneNumbers": [ { "type": "home", "number": "212 555-1234" }, { "type": "office", "number": "646 555-4567" }, { "type": "mobile", "number": "123 456-7890" } ], "children": [], "spouse": null }
Data portability issues[edit]
Although Douglas Crockford originally asserted that JSON is a strict subset of JavaScript, his specification actually allows valid JSON documents that are invalid JavaScript. Specifically, JSON allows the Unicode line terminators U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR to appear unescaped in quoted strings, while JavaScript does not.[14] This is a consequence of JSON disallowing only "control characters". For maximum portability, these characters should be backslash-escaped. This subtlety is important when generating JSONP.
JSON exchange in an open ecosystem must be encoded in UTF-8.[15] The encoding supports the full Unicode character set, including those characters outside the Basic Multilingual Plane (U+10000 to U+10FFFF). However, if escaped, those characters must be written using UTF-16 surrogate pairs, a detail missed by some JSON parsers. For example, to include the Emoji character U+1F602 😂 FACE WITH TEARS OF JOY in JSON:
{ "face": "😂" } // or { "face": "\uD83D\uDE02" }
Numbers in JSON are agnostic with regard to their representation within programming languages. No differentiation is made between an integer and floating-point value: some implementations may treat 42, 42.0, and 4.2E+1 as the same number while others may not. Furthermore, no requirements are made regarding implementation issues such as overflow, underflow, loss of precision, or rounding. Additionally, JSON says nothing about the treatment of signed zeros: whether 0.0 is distinct from -0.0. Most implementations that use the IEEE 754 floating-point standard, including JavaScript, preserve signed zeros; but not all JSON implementations may do so.
Using JSON in JavaScript[edit]
As of 2018[update], all major browsers support at least the fifth edition ECMAScript which provides[16] a safe and fast method of decoding JSON:
var p = JSON.parse(json_string);
Unsupported native data types[edit]
JavaScript syntax defines several native data types that are not included in the JSON standard:[13] Map, Set, Date, Error, Regular Expression, Function, Promise, and undefined.[note 1] These JavaScript data types must be represented by some other data format, with the programs on both ends agreeing on how to convert between the types. As of 2011[update], there are some de facto standards, e.g., converting from Date to String, but none universally recognized.[17][18] Other languages may have a different set of native types that must be serialized carefully to deal with this type of conversion.
Schema and metadata[edit]
JSON Schema[edit]
JSON Schema[19] specifies a JSON-based format to define the structure of JSON data for validation, documentation, and interaction control. It provides a contract for the JSON data required by a given application, and how that data can be modified.
JSON Schema is based on the concepts from XML Schema (XSD), but is JSON-based. As in XSD, the same serialization/deserialization tools can be used both for the schema and data; and is self-describing. It is described in an Internet Draft currently in its 6th draft, which was released on April 15, 2017[20]. Draft 4 expired on August 4, 2013,[21] but continued to be used in the lapse of more than 3 years between its expiration and the release of Draft 5. There are several validators available for different programming languages,[22] each with varying levels of conformance.
There is no standard file extension, but some have suggested .schema.json.[23]
Example JSON Schema (draft 4):
{ "$schema": "http://json-schema.org/schema#", "title": "Product", "type": "object", "required": ["id", "name", "price"], "properties": { "id": { "type": "number", "description": "Product identifier" }, "name": { "type": "string", "description": "Name of the product" }, "price": { "type": "number", "minimum": 0 }, "tags": { "type": "array", "items": { "type": "string" } }, "stock": { "type": "object", "properties": { "warehouse": { "type": "number" }, "retail": { "type": "number" } } } } }
The JSON Schema above can be used to test the validity of the JSON code below:
{ "id": 1, "name": "Foo", "price": 123, "tags": [ "Bar", "Eek" ], "stock": { "warehouse": 300, "retail": 20 } }
MIME type[edit]
The official MIME type for JSON text is "application/json",[24] and most modern implementations have adopted this.
The (unofficial) MIME type "text/json" or the content-type "text/javascript" also get legacy support by many service providers, browsers, servers, web applications, libraries, frameworks, and APIs. Notable examples include the Google Search API,[25] Yahoo!,[25][26] Flickr,[25] Facebook API,[27] Lift framework,[28] Dojo Toolkit 0.4,[29] etc.
Applications[edit]
JSON-RPC[edit]
JSON-RPC is a remote procedure call (RPC) protocol built on JSON, as a replacement for XML-RPC or SOAP. It is a simple protocol that defines only a handful of data types and commands. JSON-RPC lets a system send notifications (information to the server that does not require a response) and multiple calls to the server that can be answered out of order. Example of a JSON-RPC 2.0 request and response using positional parameters.
--> {"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": 1} <-- {"jsonrpc": "2.0", "result": 19, "id": 1}
AJAJ[edit]
Asynchronous JavaScript and JSON (or AJAJ) refers to the same dynamic web page methodology as Ajax, but instead of XML, JSON is the data format. AJAJ is a web development technique that provides for the ability of a webpage to request new data after it has loaded into the web browser. Typically it renders new data from the server in response to user actions on that webpage. For example, what the user types into a search box, client-side code then sends to the server, which immediately responds with a drop-down list of matching database items.
The following JavaScript code is an example of a client using XMLHttpRequest to request data in JSON format from a server. (The server-side programming is omitted; it must be set up to service requests to the url containing a JSON-formatted string.)
var my_JSON_object; var http_request = new XMLHttpRequest(); http_request.open("GET", url, true); http_request.responseType = "json"; http_request.onreadystatechange = function () { var done = 4, ok = 200; if (http_request.readyState === done && http_request.status === ok) { my_JSON_object = http_request.response; } }; http_request.send(null);
Security considerations[edit]
JSON is intended as a data serialization format. However, its design as a non-strict subset of JavaScript can lead to the misconception that it is safe to pass JSON strings to the JavaScript eval() function. This is not safe, due to the fact that certain valid JSON strings are actually not valid JavaScript code.[30]
To avoid the many pitfalls caused by executing arbitrary code from the internet, a new function, JSON.parse() was first added to the fifth edition of ECMAScript[31], which as of 2017 is supported by all major browsers. For non-supported browsers, an API-compatible JavaScript library is provided by Douglas Crockford.
Vulnerabilities in specific JSON parsers[edit]
Various JSON parser implementations have suffered from denial-of-service attack and mass assignment vulnerability.[32][33]
Object references[edit]
The JSON standard does not support object references, but an IETF draft standard for JSON-based object references exists.[34] The Dojo Toolkit supports object references using standard JSON; specifically, the dojox.json.ref module provides support for several forms of referencing including circular, multiple, inter-message, and lazy referencing.[35][36][37] Alternatively, non-standard solutions exist such as the use of Mozilla JavaScript Sharp Variables. However this functionality became obsolete with JavaScript 1.8.5 and was removed in Firefox version 12.[38]
Comparison with other formats[edit]
See also: Comparison of data serialization formats
JSON is promoted as a low-overhead alternative to XML as both of these formats have widespread support for creation, reading, and decoding in the real-world situations where they are commonly used.[39] Apart from XML, examples could include OGDL, YAML and CSV. Also, Google Protocol Buffers can fill this role, although it is not a data interchange language.
YAML[edit]
YAML version 1.2 is a superset of JSON; prior versions were "not strictly compatible". For example, escaping a slash (/) with a backslash (\) is valid in JSON, but was not valid in YAML. (This is common practice when injecting JSON into HTML to protect against cross-site scripting attacks.) Nonetheless, many YAML parsers can natively parse the output from many JSON encoders.[40]
XML[edit]
XML has been used to describe structured data and to serialize objects. Various XML-based protocols exist to represent the same kind of data structures as JSON for the same kind of data interchange purposes. Data can be encoded in XML in several ways. The most expansive form using tag pairs results in a much larger representation than JSON, but if data is stored in attributes and 'short tag' form where the closing tag is replaced with '/>', the representation is often about the same size as JSON or just a little larger. If the data is compressed using an algorithm like gzip, there is little difference because compression is good at saving space when a pattern is repeated.
XML also has the concept of schema. This permits strong typing, user-defined types, predefined tags, and formal structure, allowing for formal validation of an XML stream in a portable way. Similarly, there is an IETF draft proposal for a schema system for JSON.[41]
XML supports comments, but JSON does not.[42]
Samples[edit]
JSON sample[edit]
{ "firstName": "John", "lastName": "Smith", "age": 25, "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021" }, "phoneNumber": [ { "type": "home", "number": "212 555-1234" }, { "type": "fax", "number": "646 555-4567" } ], "gender": { "type": "male" } }
Both of the following examples carry the same kind of information as the JSON example above in different ways.
YAML sample[edit]
The JSON code above is also entirely valid YAML. YAML also offers an alternative syntax intended to be more human-accessible by replacing nested delimiters like {}, [], and " marks with off-side indentation.[40]
firstName: John lastName: Smith age: 25 address: streetAddress: 21 2nd Street city: New York state: NY postalCode: '10021' phoneNumber: - type: home number: 212 555-1234 - type: fax number: 646 555-4567 gender: type: male
XML samples[edit]
<person> <firstName>John</firstName> <lastName>Smith</lastName> <age>25</age> <address> <streetAddress>21 2nd Street</streetAddress> <city>New York</city> <state>NY</state> <postalCode>10021</postalCode> </address> <phoneNumber> <type>home</type> <number>212 555-1234</number> </phoneNumber> <phoneNumber> <type>fax</type> <number>646 555-4567</number> </phoneNumber> <gender> <type>male</type> </gender> </person>
The properties can also be serialized using attributes instead of tags:
<person firstName="John" lastName="Smith" age="25"> <address streetAddress="21 2nd Street" city="New York" state="NY" postalCode="10021" /> <phoneNumber type="home" number="212 555-1234"/> <phoneNumber type="fax" number="646 555-4567"/> <gender type="male"/> </person>
The XML encoding may therefore be comparable in length to the equivalent JSON encoding. A wide range of XML processing technologies exist, from the Document Object Model to XPath and XSLT. XML can also be styled for immediate display using CSS. XHTML is a form of XML so that elements can be passed in this form ready for direct insertion into webpages using client-side scripting.
See also[edit]
JSON streaming
Other formats
HOCON—Human-Optimized Config Object Notation, a superset of JSON
YAML—Another datastorage format that is a superset of JSON[43]
S-expression—the comparable LISP format for trees as text.
JSONP—JSON with Padding, a pattern of usage commonly employed when retrieving JSON across domains
GeoJSON—an open format for encoding a variety of geographic data structures
JSON-LD—JavaScript object notation for linked data, a W3C recommendation
JSON-RPC
SOAPjr—a hybrid of SOAP and JR (JSON-RPC)
JsonML
Binary encodings for JSON
BSON
MessagePack
Smile
UBJSON
EXI4JSON (EXI for JSON)—representation by means of the Efficient XML Interchange (EXI) standard
Implementations:
Jayrock—an open source implementation of JSON for the .NET Framework.
Ember data server implementations for PHP, Node.js, Ruby, Python, Go, .NET and Java.
Jackson for Java.
Other
Comparison of data serialization formats
Jq
Notes[edit]
Jump up ^ The undefined type was left out of the JSON standard, and one finds suggestions that null be used instead. In fact, the current standard says that for a sparse array such as:
var v = [0]; v[3] = 3;
which behaves in JavaScript as if it were:
 var vx = [0, undefined, undefined, 3];
with the undefined entries being only implicit rather than explicit, should translate to JSON as if it were:
 var vx = [0, null, null, 3];
with explicit null fillers for the undefined entries.
Furthermore, in JavaScript {a: undefined} often behaves the same as {}. Both translate as "{}" in JSON. However undefined as an explicit property value does have use in JavaScript inheritance situations such as:
 var x = {a: 1}; var xi = Object.create(x); xi.a = undefined;
where the inheritance of x's property a is overridden in xi and makes it pretty much behave as if nothing was inherited. JSON.stringify itself ignores inherited values - it only translates the enumerable own properties as given by Object.keys(y). The default stringification, while not encoding inheritance, can (except for undefined values) encode enough of an object to reconstruct it in an environment that knows what inheritance it should have. To encode JavaScript objects that contain explicit undefined values a convention for representing undefined must be established, such as mapping it to the string "UNDEFINED". One can then pass JSON.stringify the optional replacer argument to translate with this convention:
 var y = {a: undefined}; var ys = JSON.stringify(y, function (k, v){return (v === undefined) ? "UNDEFINED" : v});
Converting this JSON back into JavaScript is not as straightforward. While JSON.parse can take an optional reviver argument that is, essentially, the inverse of a replacer, it can't be used in this situation. If that function returns undefined, the JSON.parse logic interprets this to mean to not define a property rather than define one with a undefined value. Instead one has to explicitly post process the result from JSON.parse replacing each "UNDEFINED" with undefined.
References[edit]
Jump up ^ "Doug Crockford "Google Tech Talks: JavaScript: The Good Parts"". 7 February 2009.
Jump up ^ "A Modern Reintroduction To AJAX". Retrieved 12 April 2017.
Jump up ^ Bray, Tim. "JSON Redux AKA RFC8259". Ongoing. Retrieved 16 March 2014.
Jump up ^ Bray, Tim (ed.), The I-JSON Message Format, Internet Engineering Task Force (IETF), RFC 7493
Jump up ^ "Douglas Crockford — The JSON Saga". YouTube. 28 August 2011. Retrieved 23 September 2016.
Jump up ^ "Chip Morningstar Biography". n.d.
Jump up ^ "State Software Breaks Through Web App Development Barrier With State Application Framework: Software Lets Developers Create Truly Interactive Applications; Reduces Costs, Development Time and Improves User Experience". PR Newswire. February 12, 2002.
Jump up ^ Apache and the JSON license on LWN.net by Jake Edge (November 30, 2016)
Jump up ^ Yahoo!. "Using JSON with Yahoo! Web services". Archived from the original on October 11, 2007. Retrieved July 3, 2009.
Jump up ^ Crockford, Douglas (May 28, 2009). "Introducing JSON". json.org. Retrieved July 3, 2009.
Jump up ^ Douglas Crockford (2016-07-10). "JSON in JavaScript". Archived from the original on 2016-07-10. Retrieved 2016-08-13. CS1 maint: BOT: original-url status unknown (link)
^ Jump up to: a b "The JSON Data Interchange Format" (PDF). ECMA International. October 2013. Retrieved 23 September 2016.
^ Jump up to: a b "JSON Web Token (JWT)". IETF. May 2015. Retrieved 23 September 2016.
Jump up ^ Holm, Magnus (15 May 2011). "JSON: The JavaScript subset that isn't". The timeless repository. Retrieved 23 September 2016.
Jump up ^ "The JavaScript Object Notation (JSON) Data Interchange Format". IETF. December 2017. Retrieved 16 February 2018.
Jump up ^ "Standard ECMA-262". ecma-international.org. Retrieved 13 September 2015.
Jump up ^ "jquery - Format a Microsoft JSON date? - Stack Overflow". stackoverflow.com. Retrieved 13 September 2015.
Jump up ^ "Tales from the Evil Empire - Dates and JSON". asp.net. Retrieved 13 September 2015.
Jump up ^ "JSON Schema and Hyper-Schema". json-schema.org. Retrieved 13 September 2015.
Jump up ^ "draft-wright-json-schema-01 - JSON Schema: A Media Type for Describing JSON Documents". json-schema.org/. Retrieved 23 July 2017.
Jump up ^ "draft-zyp-json-schema-04 - JSON Schema: core definitions and terminology". ietf.org. Retrieved 17 March 2016.
Jump up ^ "JSON Schema Software". json-schema.org. Retrieved 13 September 2015.
Jump up ^ http://stackoverflow.com/a/10507586/287948
Jump up ^ "Media Types". iana.org. Retrieved 13 September 2015.
^ Jump up to: a b c "Handle application/json & text/json by benschwarz · Pull Request #2 · mislav/faraday-stack". GitHub. Retrieved 13 September 2015.
Jump up ^ "Yahoo!, JavaScript, and JSON". ProgrammableWeb. Retrieved 13 September 2015.
Jump up ^ "Make JSON requests allow text/javascript content by jakeboxer · Pull Request #148 · AFNetworking/AFNetworking". GitHub. Retrieved 13 September 2015.
Jump up ^ "lift/Req.scala at master · lift/lift · GitHub". GitHub. Retrieved 13 September 2015.
Jump up ^ "BrowserIO.js in legacy/branches/0.4/src/io – Dojo Toolkit". dojotoolkit.org. Retrieved 13 September 2015.
Jump up ^ "JSON: The JavaScript subset that isn't". Magnus Holm. Retrieved 16 May 2011.
Jump up ^ "ECMAScript Fifth Edition" (PDF). Retrieved March 18, 2011.
Jump up ^ "Denial of Service and Unsafe Object Creation Vulnerability in JSON (CVE-2013-0269)". Retrieved January 5, 2016.
Jump up ^ "Microsoft .NET Framework JSON Content Processing Denial of Service Vulnerability". Retrieved January 5, 2016.
Jump up ^ Zyp, Kris (September 16, 2012). Bryan, Paul C., ed. "JSON Reference: draft-pbryan-zyp-json-ref-03". Internet Engineering Task Force.
Jump up ^ Zyp, Kris. "dojox.json.ref". Dojo.
Jump up ^ Zyp, Kris (June 17, 2008). "JSON referencing in Dojo". SitePen. Retrieved July 3, 2009.
Jump up ^ von Gaza, Tys (Dec 7, 2010). "JSON referencing in jQuery". NUBUNTU. Archived from the original on May 7, 2015. Retrieved Dec 7, 2010.
Jump up ^ "Sharp variables in JavaScript". Mozilla Developer Network. April 4, 2015. Retrieved 21 April 2012.
Jump up ^ "JSON: The Fat-Free Alternative to XML". json.org. Retrieved 14 March 2011.
^ Jump up to: a b "YAML Ain't Markup Language (YAML™) Version 1.2". yaml.org. Retrieved 13 September 2015.
Jump up ^ "JSON Schema". json-schema.org. Retrieved 2017-04-10.
Jump up ^ Saternos, Casimir (2014). Client-server web apps with Javascript and Java. p. 45. ISBN 9781449369316.
Jump up ^ Oren Ben-Kiki; Clark Evans; Ingy döt Net. "YAML Ain't Markup Language (YAML™) Version 1.2". Retrieved 29 August 2015.
External links[edit]
Find more aboutJSONat Wikipedia's sister projects
Definitions from Wiktionary
Media from Wikimedia Commons
Textbooks from Wikibooks
Official website
"ECMA-404 JSON Data Interchange Format" (pdf). ECMA Int'l.
RFC 8259, JSON Data Interchange Format
RFC 7049, Concise Binary Object Representation (CBOR) for JSON
"JSON Validator". JSON lint.
"JSON Formatter". Online JSON Formatter.
"JSON for Office". - Use of JSON format in Office suites & detailed information about JSON parsing
hide
v
t
e
Data exchange formats
Human readable formats
Atom
XML
YAML
JSON
RDF
Rebol
RSS
OWL
Binary formats
AMF
ASN.1
SMI
Avro
BSON
CBOR
FlatBuffers
MessagePack
Protocol Buffers
Thrift
Smile
XDR
Authority control
GND: 1105592812
LCCN: sh2014000515
Retrieved from "https://en.wikipedia.org/w/index.php?title=JSON&oldid=845580310"
Categories:
Computer-related introductions in 2001
Ajax (programming)
Data serialization formats
JSON
Markup languages
Configuration files
Open formats
Hidden categories:
CS1 maint: BOT: original-url status unknown
Pages using deprecated image syntax
Articles containing potentially dated statements from 2017
All articles containing potentially dated statements
Articles needing additional references from March 2018
All articles needing additional references
All articles with unsourced statements
Articles with unsourced statements from December 2016
Wikipedia articles needing factual verification from January 2017
All articles with failed verification
Articles with failed verification from January 2017
Articles containing potentially dated statements from 2018
Articles containing potentially dated statements from 2011
Official website different in Wikidata and Wikipedia
Wikipedia articles with GND identifiers
Wikipedia articles with LCCN identifiers
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Article
Talk
Variants
Views
Read
Edit
View history
More
Search
Navigation
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version
In other projects
Wikimedia Commons
Wikibooks
Languages
العربية
Azərbaycanca
Български
Català
Čeština
Deutsch
Eesti
Español
Euskara
فارسی
Français
Galego
한국어
Հայերեն
हिन्दी
Bahasa Indonesia
Italiano
עברית
Кыргызча
Latviešu
Lietuvių
Magyar
മലയാളം
Bahasa Melayu
Nederlands
日本語
Norsk
Polski
Português
Română
Русский
Shqip
Simple English
Српски / srpski
Suomi
Svenska
தமிழ்
ไทย
Türkçe
Українська
Tiếng Việt
中文
33 more
Edit links
This page was last edited on 12 June 2018, at 18:31 (UTC).
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
Privacy policy
About Wikipedia
Disclaimers
Contact Wikipedia
Developers
Cookie statement
Mobile view
Enable previews

values: mw-page-base noprint

values: mw-head-base noprint

values: firstHeading firstHeading en

values: siteSub noprint

attrs: class href

values: mw-jump-link #mw-head

values: mw-jump-link #p-search

attrs: href class title

values:
/wiki/J_Son_(disambiguation)
mw-redirect mw-disambig
J Son (disambiguation)

attrs: role class

values:
note
hatnote navigation-not-searchable

value: caption

attrs: alt src width height srcset data-file-width data-file-height

value: code

values:
/wiki/Request_for_Comments_(identifier)
mw-redirect
Request for Comments (identifier)

values:
nofollow
external text
https://tools.ietf.org/html/rfc8259

values: plainlinks noexcerpt noprint asof-tag update

values:
nofollow
external text
https://tools.ietf.org/html/rfc7493

values: Help:Introduction to referencing with Wiki Markup/1

values: plainlinks metadata ambox ambox-content ambox-Refimprove

attrs: alt src width height class srcset data-file-width data-file-height

values: This claim needs references to reliable sources. (December 2016)

values:
noprint Inline-Template Template-Fact
white-space:nowrap;

values: Quotation needed from source to verify. (January 2017)

values:
/wiki/Programming_languages
mw-redirect
Programming languages

values: The material near this tag failed verification of its source citation(s). (January 2017)

values:
nofollow
external text
https://tools.ietf.org/html/rfc7158

values:
nofollow
external text
https://tools.ietf.org/html/rfc7159

values:
nofollow
external text
https://tools.ietf.org/html/rfc4627

values: Edit section: Data types, syntax and example

values:
/wiki/Boolean_datatype
mw-redirect
Boolean datatype

values:
/wiki/Square_bracket
mw-redirect
Square bracket

values:
/wiki/Braces_(punctuation)#Braces
mw-redirect
Braces (punctuation)

values:
monospaced
font-family: monospace, monospace;

values: font-variant: small-caps; font-size: smaller;

values:
/wiki/Arithmetic_overflow
mw-redirect
Arithmetic overflow

values:
/wiki/Signed_zeros
mw-redirect
Signed zeros

values: Edit section: Unsupported native data types

values:
/wiki/Asynchronous_JavaScript_and_JSON
mw-redirect
Asynchronous JavaScript and JSON

values:
/wiki/Client-side_scripting
mw-redirect
Client-side scripting

values:
/wiki/Data_serialization
mw-redirect
Data serialization

values: Edit section: Vulnerabilities in specific JSON parsers

values: Edit section: Comparison with other formats

values: Comparison of data serialization formats

values:
reflist mw-references-wrap
list-style-type: decimal;

values:
nofollow
external text
//tools.ietf.org/html/rfc7493

attrs: alt src title width height srcset data-file-width data-file-height

values:
nofollow
external text
http://www.fudco.com/chip/resume.html

values:
nofollow
https://lwn.net/Articles/707510/
external text

values: Category:CS1 maint: BOT: original-url status unknown

values:
nofollow
external text
https://tools.ietf.org/html/rfc7519

values:
nofollow
http://json-schema.org/
external text

values:
nofollow
external text
http://www.json.org/xml.html

values:
nofollow
external text
http://www.yaml.org/spec/1.2/spec.html

values: -moz-column-width: 30em; -webkit-column-width: 30em; column-width: 30em; list-style-type: decimal;

values: padding-bottom: 0.75em; text-align: center;

values: display: inline-block; width: 31px; line-height: 31px; vertical-align: middle; text-align: center;

values: display: inline-block; margin-left: 4px; width: 182px; vertical-align: middle;

values: border-top:1px solid #aaa; padding-top: 0.75em;

values: metadata plainlinks plainlist mbox-small

values: border:1px solid #aaa; padding:0.75em; background:#f9f9f9;

values:
nofollow
http://www.json.org/
external text

values:
nofollow
external text
https://tools.ietf.org/html/rfc7049

values:
nofollow
https://jsonlint.com/
external text

values:
nofollow
http://www.jsonforoffice.com/
external text

values:
/wiki/Atom_(standard)
mw-redirect
Atom (standard)

values: nowraplinks collapsible autocollapse navbox-inner mw-collapsible mw-made-collapsible

values:
nofollow
external text
https://d-nb.info/gnd/1105592812

values: Category:Computer-related introductions in 2001

values: Category:Pages using deprecated image syntax

values: Category:Articles containing potentially dated statements from 2017

values: Category:All articles containing potentially dated statements

values: Category:Articles needing additional references from March 2018

values: Category:All articles needing additional references

values: Category:All articles with unsourced statements

values: Category:Articles with unsourced statements from December 2016

values: Category:Wikipedia articles needing factual verification from January 2017

values: Category:All articles with failed verification

values: Category:Articles with failed verification from January 2017

values: Category:Articles containing potentially dated statements from 2018

values: Category:Articles containing potentially dated statements from 2011

values: Category:Official website different in Wikidata and Wikipedia

values: Category:Wikipedia articles with GND identifiers

values: Category:Wikipedia articles with LCCN identifiers

values: Discussion about edits from this IP address [ctrl-alt-n]

values: A list of edits made from this IP address [ctrl-alt-y]

values: You are encouraged to create an account and log in; however, it is not mandatory

values: You're encouraged to log in; however, it's not mandatory. [ctrl-alt-o]

values:
/wiki/JSON
View the content page [ctrl-alt-c]
c

values: Discussion about the content page [ctrl-alt-t]

values: p-namespaces navigation vectorTabs p-namespaces-label

values:
p-variants
navigation
vectorMenu emptyPortlet
p-variants-label

values:
/w/index.php?title=JSON&action=edit
Edit this page [ctrl-alt-e]
e

values: Past revisions of this page [ctrl-alt-h]

values: p-views navigation vectorTabs p-views-label

values:
p-cactions
navigation
vectorMenu emptyPortlet
p-cactions-label

values:
mw-wiki-logo
/wiki/Main_Page
Visit the main page

values:
/wiki/Main_Page
Visit the main page [ctrl-alt-z]
z

values: Featured content – the best of Wikipedia

values: Find background information on current events

values:
/wiki/Special:Random
Load a random article [ctrl-alt-x]
x

values: portal navigation p-navigation p-navigation-label

values: Guidance on how to use and edit Wikipedia

values: About the project, what you can do, where to find things

values: portal navigation p-wikibase-otherprojects p-wikibase-otherprojects-label

values:
https://az.wikipedia.org/wiki/JSON
JSON – Azerbaijani
az
az
interlanguage-link-target

values:
interlanguage-link interwiki-az
display: none;

values:
https://bg.wikipedia.org/wiki/JSON
JSON – Bulgarian
bg
bg
interlanguage-link-target

values:
interlanguage-link interwiki-bg
display: none;

values:
https://ca.wikipedia.org/wiki/JSON
JSON – Catalan
ca
ca
interlanguage-link-target

values:
interlanguage-link interwiki-ca
display: none;

values:
interlanguage-link interwiki-cs
display: none;

values:
interlanguage-link interwiki-de
display: none;

values:
https://et.wikipedia.org/wiki/JSON
JSON – Estonian
et
et
interlanguage-link-target

values:
interlanguage-link interwiki-et
display: none;

values:
https://es.wikipedia.org/wiki/JSON
JSON – Spanish
es
es
interlanguage-link-target

values:
interlanguage-link interwiki-eu
display: none;

values:
interlanguage-link interwiki-fa
display: none;

values:
https://gl.wikipedia.org/wiki/JSON
JSON – Galician
gl
gl
interlanguage-link-target

values:
interlanguage-link interwiki-gl
display: none;

values:
https://ko.wikipedia.org/wiki/JSON
JSON – Korean
ko
ko
interlanguage-link-target

values:
interlanguage-link interwiki-ko
display: none;

values:
https://hy.wikipedia.org/wiki/JSON
JSON – Armenian
hy
hy
interlanguage-link-target

values:
interlanguage-link interwiki-hy
display: none;

values: जेसन – Hindi

values:
https://id.wikipedia.org/wiki/JSON
JSON – Indonesian
id
id
interlanguage-link-target

values:
interlanguage-link interwiki-it
display: none;

values:
https://he.wikipedia.org/wiki/JSON
JSON – Hebrew
he
he
interlanguage-link-target

values:
interlanguage-link interwiki-he
display: none;

values:
https://ky.wikipedia.org/wiki/JSON
JSON – Kyrgyz
ky
ky
interlanguage-link-target

values:
interlanguage-link interwiki-ky
display: none;

values:
https://lv.wikipedia.org/wiki/JSON
JSON – Latvian
lv
lv
interlanguage-link-target

values:
interlanguage-link interwiki-lv
display: none;

values:
https://lt.wikipedia.org/wiki/JSON
JSON – Lithuanian
lt
lt
interlanguage-link-target

values:
interlanguage-link interwiki-lt
display: none;

values:
https://hu.wikipedia.org/wiki/JSON
JSON – Hungarian
hu
hu
interlanguage-link-target

values:
interlanguage-link interwiki-hu
display: none;

values:
interlanguage-link interwiki-ml
display: none;

values:
https://ms.wikipedia.org/wiki/JSON
JSON – Malay
ms
ms
interlanguage-link-target

values:
https://nl.wikipedia.org/wiki/JSON
JSON – Dutch
nl
nl
interlanguage-link-target

values:
interlanguage-link interwiki-nl
display: none;

values:
interlanguage-link interwiki-ja
display: none;

values:
https://no.wikipedia.org/wiki/JSON
JSON – Norwegian
no
no
interlanguage-link-target

values:
interlanguage-link interwiki-no
display: none;

values:
https://pl.wikipedia.org/wiki/JSON
JSON – Polish
pl
pl
interlanguage-link-target

values:
interlanguage-link interwiki-pl
display: none;

values:
https://pt.wikipedia.org/wiki/JSON
JSON – Portuguese
pt
pt
interlanguage-link-target

values:
https://ro.wikipedia.org/wiki/JSON
JSON – Romanian
ro
ro
interlanguage-link-target

values:
interlanguage-link interwiki-ro
display: none;

values:
https://ru.wikipedia.org/wiki/JSON
JSON – Russian
ru
ru
interlanguage-link-target

values:
https://sq.wikipedia.org/wiki/JSON
JSON – Albanian
sq
sq
interlanguage-link-target

values:
interlanguage-link interwiki-sq
display: none;

values:
https://simple.wikipedia.org/wiki/JSON
JSON – Simple English
simple
simple
interlanguage-link-target

values:
interlanguage-link interwiki-simple
display: none;

values:
https://sr.wikipedia.org/wiki/JSON
JSON – Serbian
sr
sr
interlanguage-link-target

values:
interlanguage-link interwiki-sr
display: none;

values:
https://fi.wikipedia.org/wiki/JSON
JSON – Finnish
fi
fi
interlanguage-link-target

values:
interlanguage-link interwiki-fi
display: none;

values:
https://sv.wikipedia.org/wiki/JSON
JSON – Swedish
sv
sv
interlanguage-link-target

values:
interlanguage-link interwiki-sv
display: none;

values: யேசண் – Tamil

values:
interlanguage-link interwiki-ta
display: none;

values: เจซัน – Thai

values:
interlanguage-link interwiki-th
display: none;

values:
https://tr.wikipedia.org/wiki/JSON
JSON – Turkish
tr
tr
interlanguage-link-target

values:
interlanguage-link interwiki-tr
display: none;

values:
https://uk.wikipedia.org/wiki/JSON
JSON – Ukrainian
uk
uk
interlanguage-link-target

values:
interlanguage-link interwiki-uk
display: none;

values:
https://vi.wikipedia.org/wiki/JSON
JSON – Vietnamese
vi
vi
interlanguage-link-target

values:
interlanguage-link interwiki-vi
display: none;

values:
https://zh.wikipedia.org/wiki/JSON
JSON – Chinese
zh
zh
interlanguage-link-target

values: All languages (initial selection from common choices by you and others)

values: /static/images/wikimedia-button-1.5x.png 1.5x, /static/images/wikimedia-button-2x.png 2x

values: /static/images/poweredby_mediawiki_132x47.png 1.5x, /static/images/poweredby_mediawiki_176x62.png 2x

values:
suggestions
display: none; font-size: 13px;

values: mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-JSON rootpage-JSON skin-vector action-view