AUTOMATED FORMATTING BASED ON A STYLE GUIDE
Techniques are provided for organizing information in a document according to the rules of a particular style guide. Information for full references is collected and stored as both reference metadata in the metadata of the document, and as reference text in one or more locations in the text of the document. As information for a particular reference is input into a GUI, a depiction of reference text for the reference is automatically updated to reflect each new item of information, such that the depiction continually conforms to the rules of the particular style guide. A user may insert in-text citations, based on reference metadata in the metadata of the document, into the text of the document. A formatted in-text citation may be presented to a user for editing. The edited in-text citation is automatically inserted into the text of the document at a location indicated by the user.
1 . A computer-executed method for formatting text according to a particular set of pre-defined rules comprising:
receiving reference information;
in response to user interaction with a control, automatically performing:
storing the reference information as reference metadata within metadata of a document, and
inserting reference text that reflects said reference information into the text of said document;
wherein the reference text is formatted according to said rules;
wherein the reference metadata is distinct from the reference text; and
wherein the method is performed by one or more computing devices.
2 . The computer-executed method of claim 1 , further comprising:
based on the rules, automatically selecting a location, within said document, at which to insert the reference text;
wherein the rules pertain to a particular style guide.
3 . The computer-executed method of claim 2 ,
wherein the location at which to insert the reference text is a reference section;
wherein the step of inserting the reference text that reflects said reference information into said document further comprises:
determining whether the reference section includes a heading;
in response to determining that the reference section does not include a heading, automatically including a heading in the reference section;
in response to determining that the reference section includes a heading:
determining whether the reference section reflects one and only one previously-entered reference;
in response to determining that the reference section reflects one and only one previously-entered reference, modifying the heading of the reference section.
4 . The computer-executed method of claim 1 , further comprising:
receiving a request to rebuild an original reference section of said document;
in response to receiving the request to rebuild the original reference section, inserting a rebuilt reference section, based at least in part on the reference metadata, into the text of said document;
wherein the rebuilt reference section includes said reference text.
5 . The computer-executed method of claim 4 , wherein the original reference section includes said reference text.
6 . The computer-executed method of claim 4 , wherein the original reference section does not include said reference text.
7 . The computer-executed method of claim 1 , further comprising continuing to maintain the reference metadata in the metadata of said document after a user deletes said reference text from the text of said document.
8 . The computer-executed method of claim 1 , further comprising:
in response to receiving a request to remove from said document a particular reference:
removing said reference metadata from the metadata of the document; and
deleting said reference text from the text of said document.
9 . The computer-executed method of claim 8 , wherein receiving the request to remove from said document the particular reference further comprises:
displaying, in a user interface, a list of references represented in the metadata of the document;
wherein the user interface comprises one or more controls for removing a reference from said document; and
detecting the request to remove from said document said particular reference through the one or more controls.
10 . The computer-executed method of claim 1 , further comprising:
receiving a request to insert an in-text citation, based on a particular reference, into a particular location of the text of the document;
in response to the request to insert the in-text citation, performing the steps of:
retrieving, from the metadata of the document, the reference information for the particular reference;
wherein the reference information comprises (a) a first set of one or more information elements that are required for the in-text citation, according to the particular set of pre-defined rules, according to the particular set of pre-defined rules, and (b) a second set of one or more information elements that are not required for the in-text citation, according to the particular set of pre-defined rules;
selectively extracting, from the reference information, those information elements in the first set of one or more information elements and not extracting those information elements in the second set of one or more information elements, to produce extracted information elements;
constructing citation text that (a) includes the extracted information elements, and (b) conforms to the particular set of pre-defined rules.
11 . The computer-executed method of claim 1 , further comprising:
presenting a user interface, comprising a plurality of UI elements, that allows a user to enter information items for a particular reference reflected in the reference information;
displaying, in the user interface, a depiction, of the particular reference, that (a) is based on information items that the user has previously entered into the user interface, and (b) conforms to the particular set of pre-defined rules; and
as the user enters new information items via one or more of the UI elements, continuously updating the depiction of the particular reference to cause the depiction to (a) reflect the previously-entered and newly-entered information, and (b) continue to conform to the particular set of pre-defined rules.
12 . A computer-executed method for displaying the format of a particular reference comprising:
presenting a user interface, comprising a plurality of UI elements, that allows a user to enter information items for the particular reference;
displaying, in the user interface, a depiction, of the particular reference, that (a) is based on information items that the user has previously entered into the user interface, and (b) conforms to a particular set of pre-defined rules; and
as the user enters new information items via one or more of the UI elements, continuously updating the depiction of the particular reference to cause the depiction to (a) reflect the previously-entered and newly-entered information, and (b) continue to conform to the particular set of pre-defined rules;
wherein the method is performed by one or more computing devices.
13 . The computer-executed method of claim 12 further comprising:
receiving a particular new information item through a particular UI element of the user interface;
in response to receiving the particular new information item, adding to the depiction of the particular reference (a) the particular new information item, and (b) one or more additional characters not included in the particular new information item;
wherein the particular new information item comprises one or more characters.
14 . A computer-executed method comprising:
receiving a request to insert an in-text citation, based on a particular reference, into a particular location of the text of a document;
in response to the request to insert the in-text citation, performing the steps of:
retrieving, from metadata stored in the document, reference information for the particular reference;
wherein the reference information comprises (a) a first set of one or more information elements that are required for the in-text citation, according to a particular set of pre-defined rules, according to the particular set of pre-defined rules, and (b) a second set of one or more information elements that are not required for the in-text citation, according to the particular set of pre-defined rules;
selectively extracting, from the reference information, those information elements in the first set of one or more information elements and not extracting those information elements in the second set of one or more information elements, to produce extracted information elements;
constructing citation text that (a) includes the extracted information elements, and (b) conforms to the particular set of pre-defined rules; and
automatically inserting the citation text at the particular location of the text of the document;
wherein the method is performed by one or more computing devices.
15 . The computer-executed method of claim 14 further comprising:
prior to inserting the citation text into the text of the document:
presenting the citation text in a UI element of a GUI for editing by a user;
receiving user input that edits the citation text to produce edited citation text;
detecting user interaction with a UI control included in the GUI;
in response to detecting the user interaction with the UI control, automatically inserting the edited citation text at the particular location in the text of the document.
16 . The computer-executed method of claim 14 , wherein the step of receiving a request to insert an in-text citation further comprises detecting user selection of the particular reference from a list of references, displayed in a GUI, that are represented in the metadata of the document.
17 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 1 .
18 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 2 .
19 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 3 .
20 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 4 .
21 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 5 .
22 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 6 .
23 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 7 .
24 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 8 .
25 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 9 .
26 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 10 .
27 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 11 .
28 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 12 .
29 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 13 .
30 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 14 .
31 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 15 .
32 . One or more storage media storing instructions which, when executed by one or more computing devices, cause performance of the method recited in claim 16 .