 
 INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
 (18, 'Panels on Civilizer', STRINGDECODE('In Civilizer, a _**Panel**_ is a rectangular layout containing Fragments.  \r\n\r\nThe main purposes of Panels are :\r\n- To show two or more Fragments simultaneously on the same page.\r\n- Thus, to greatly reduce going back and forth across the pages.\r\n- And to greatly help you when you need to review many Fragments at once.\r\n\r\nCivilizer has a maximum of 3 Panels but it shows only one by default.\r\n\r\nSo you can manage a maximum of 3 categories of Fragments simultaneously. For instance,\r\n1. On Panel 0, you can view or edit Fragments of a specific topic.\r\n1. On Panel 1, you can view other related Fragments for a reference purpose.\r\n1. On Panel 2, you can view results from a specific search phrase.\r\n\r\nClicking each icon {{[html] <span class=\"fa fa-desktop\"></span>}} on the header will toggle each Panel.\r\n\r\nAlso each Panel has its own scroll bar so scrolling one Panel doesn''t affect the other Panels.'), TIMESTAMP '2015-07-14 15:03:23.841', TIMESTAMP '2015-07-14 15:05:08.167'),
-(19, 'Basic Operations for Tags', STRINGDECODE('###### Adding a Tag to a Fragment\r\n- Open Fragment Editor for a Fragment you want to tag.\r\n- You''ll see the **tag input box** located just above the toolbar.\r\n  - When you type any existing tag name, autocomplete list box will appear.\r\n   - Press UP/DOWN keys to focus name to name when you have multiple candidates.\r\n   - Press ENTER key to select and add the focused tag name.\r\n   - Press ESC key to make the autocomplete list box disappear.\r\n  - Also by typing a new tag name, you can add a new tag to the Fragment.\r\n- Note that typed tags will be added to the Fragment _**after you save the Fragment**_.\r\n  - Also note that a new tag will be created and stored on the database after you save the Fragment.\r\n\r\n###### Creating a Tag\r\n- Click the icon {{[html] <span class=\"fa fa-tag ui-panel ui-widget-content ui-corner-all\">+</span> }} on {{[html] <span style=\"color:green\" class=\"fa fa-tags\">&nbsp;&nbsp;Tag Palette</span> }} on your right side.\r\n  - A _**Tag Editor**_ will appear.\r\n  - Refer to **Editing a Tag** section for operations of Tag Editor.\r\n\r\n###### Editing a Tag\r\n1. {{[clr-b] Right click on the tag }} you''d like to edit.\r\n1. Click _**Edit**_.\r\n1. A _**Tag Editor**_ will appear.\r\n  - You can rename the tag by clicking the tag name at the top.\r\n  - You can change the hierarchy of the tag.\r\n    - There are two panels in the middle denoting parent tags on the left and child tags on the right.\r\n    - By clicking ''**+**'', a listbox of selectable tags will appear.\r\n    - You can insert a new parent or child by:\r\n      - Selecting a tag from the listbox.\r\n      - Then, click the {{[html]<span class=\"fa fa-check\"></span> }} button.\r\n      - When you have too many tags to select from, just type some text in the input box to filter out what you want.\r\n\r\n###### Trashing a Tag\r\n1. Right click on the tag you''d like to edit.\r\n1. Click _**Trash**_.\r\n1. Click OK button on the confirm dialog\r\n  - If the tag contains one or more Fragments, the Fragments will be trashed.\r\n    - But the tag itself will remain.\r\n  - {{[clr-r] If the tag contains no Fragment, the tag will disappear from the storage }}.\r\n\r\n> [NOTICE] You can also perform the above operations for tag icons located on other areas such as Fragment headers.'), TIMESTAMP '2015-07-14 15:22:02.941', TIMESTAMP '2015-08-21 18:04:56.588'),
-(20, 'File Box', STRINGDECODE('You can manage arbitrary files via **File Box** in Civilizer.\r\n\r\nSometimes you want a Fragment to have a link to a certain file.  \r\nTo do that, you first need to upload that file into File Box.\r\n\r\nThough File box''s primary purpose is managing files that may be linked to Fragments,  \r\nyou can let File Box manage any files you want whether or not the files having relationships to Fragments.\r\n\r\nFile Box''s structure looks like a regular file system of common operating systems.  \r\nIt provides a hierarchy of folders/files and also common operations such as renaming/moving/deleting those folders/files.\r\n'), TIMESTAMP '2015-07-15 17:25:05.635', TIMESTAMP '2015-07-15 19:13:01.778');        
+(19, 'Basic Operations for Tags', STRINGDECODE('###### Adding a Tag to a Fragment\r\n- Open Fragment Editor for a Fragment you want to tag.\r\n- You''ll see the **tag input box** located just above the toolbar.\r\n  - When you type any existing tag name, autocomplete list box will appear.\r\n   - Press UP/DOWN keys to focus name to name when you have multiple candidates.\r\n   - Press ENTER key to select and add the focused tag name.\r\n   - Press ESC key to make the autocomplete list box disappear.\r\n  - Also by typing a new tag name, you can add a new tag to the Fragment.\r\n- Note that typed tags will be added to the Fragment _**after you save the Fragment**_.\r\n  - Also note that a new tag will be created and stored on the database after you save the Fragment.\r\n* * *\r\n###### Creating a Tag\r\n- Click the icon {{[html] <span class=\"fa fa-tag ui-panel ui-widget-content ui-corner-all\">+</span> }} on {{[html] <span style=\"color:green\" class=\"fa fa-tags\">&nbsp;&nbsp;Tag Palette</span> }} on your right side.\r\n  - A _**Tag Editor**_ will appear.\r\n  - Refer to **Editing a Tag** section for operations of Tag Editor.\r\n\r\n###### Editing a Tag\r\n1. {{[clr-b] Right click on the tag }} you''d like to edit.\r\n1. Click _**Edit**_.\r\n1. A _**Tag Editor**_ will appear.\r\n  - You can rename the tag by clicking the tag name at the top.\r\n  - You can change the hierarchy of the tag.\r\n    - There are two panels in the middle denoting parent tags on the left and child tags on the right.\r\n    - By clicking ''**+**'', a listbox of selectable tags will appear.\r\n    - You can insert a new parent or child by:\r\n      - Selecting a tag from the listbox.\r\n      - Then, click the {{[html]<span class=\"fa fa-check\"></span> }} button.\r\n      - When you have too many tags to select from, just type some text in the input box to filter out what you want.\r\n* * *\r\n###### Trashing a Tag\r\n1. Right click on the tag you''d like to edit.\r\n1. Click _**Trash**_.\r\n1. Click OK button on the confirm dialog\r\n  - If the tag contains one or more Fragments, the Fragments will be trashed.\r\n    - But the tag itself will remain.\r\n  - {{[clr-r] If the tag contains no Fragment, the tag will disappear from the storage }}.\r\n\r\n> [NOTICE] You can also perform the above operations for tag icons located on other areas such as Fragment headers.'), TIMESTAMP '2015-07-14 15:22:02.941', TIMESTAMP '2015-08-22 08:45:52.607'),
+(20, 'File Box', STRINGDECODE('You can manage arbitrary files via **File Box** in Civilizer.\r\n\r\nSometimes you want a Fragment to have a link to a certain file.  \r\nTo do that, you first need to upload that file into File Box.\r\n\r\nThough File box''s primary purpose is managing files that may be linked to Fragments,  \r\nyou can let File Box manage any files you want whether or not the files having relationships to Fragments.\r\n\r\nFile Box''s structure looks like a regular file system of common operating systems.  \r\nIt provides a hierarchy of folders/files and also common operations such as renaming/moving/deleting those folders/files.\r\n'), TIMESTAMP '2015-07-15 17:25:05.635', TIMESTAMP '2015-07-15 19:13:01.778');              
 
 INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
-(21, 'Basic Operations for File Box', STRINGDECODE('###### Uploading a File\r\n1. Right click anywhere on the empty space in File Box.\r\n1. Click _**Upload File**_ from the context menu.\r\n1. The upload dialog will appear.\r\n1. Select the destination folder where your file will be placed in File Box.\r\n1. Click _**Choose**_\r\n1. Click OK button that appeared with some shake animation.\r\n\r\n###### Inserting a link to a File into a Fragment\r\nThis operation can be performed with a simple drag & drop.  \r\nThe Fragment that you want to have a link to a file needs to be in edit mode.\r\n\r\n1. Open Fragment Editor to edit the Fragment that you want to have a link to a file.\r\n1. Bring your mouse cursor to the target file in File Box.\r\n1. Drag and drop it to the content textarea in Fragment Editor.\r\n1. A custom markup text will be generated at the place the caret was located.\r\n1. After saving the Fragment, you can see a link to the file generated.\r\n1. What will happen by click the link depends on:\r\n  - the type of file.\r\n  - behavior of your browser specified for that type of file. (mostly downloading it)\r\n* * *\r\n###### Renaming a File/Folder\r\n1. Right click on the file/folder you''d like to rename.\r\n1. A dialog appears.\r\n1. Rename it.\r\n1. Click OK.\r\n\r\n###### Moving a File/Folder\r\n1. Right click on the file/folder you''d like to move.\r\n1. A Move Dialog appears.\r\n1. Select the destination folder.\r\n  - When moving a folder, You can''t move it to certain destinations in a logical sense.\r\n    - such as to a folder which is the moving folder''s sub folder. \r\n    - In such cases, a warning message will appear and you won''t be able to proceed.\r\n  - When moving a folder, all of its sub folders and files will be moved.\r\n1. Click OK.\r\n\r\n###### Deleting a File/Folder\r\n1. Right click on the file/folder you''d like to delete.\r\n1. Click OK on the confirm dialog.'), TIMESTAMP '2015-07-15 17:43:44.624', TIMESTAMP '2015-07-15 18:27:55.386'),
+(21, 'Basic Operations for File Box', STRINGDECODE('###### Uploading a File\r\n1. Right click anywhere on the empty space in File Box.\r\n1. Click _**Upload File**_ from the context menu.\r\n1. The upload dialog will appear.\r\n1. Select the destination folder where your file will be placed in File Box.\r\n1. Click _**Choose**_\r\n1. Click OK button that appeared with some shake animation.\r\n\r\n###### Inserting a link to a File into a Fragment\r\nThis operation can be performed with a simple drag & drop.  \r\nThe Fragment that you want to have a link to a file needs to be in edit mode.\r\n\r\n1. Open Fragment Editor to edit the Fragment that you want to have a link to a file.\r\n1. Grab the target file in {{[html] <span style=\"color:brown\" class=\"fa fa-floppy-o\">&nbsp;&nbsp;File Box</span> }} with your mouse.\r\n1. Drag and drop it to the content textarea in Fragment Editor.\r\n1. A custom markup text will be generated at the place where the caret was located.\r\n1. After saving the Fragment, you can see a link to the file generated.\r\n1. What will happen by click the link depends on:\r\n  - the type of file.\r\n  - behavior of your browser specified for that type of file. (mostly downloading it)\r\n* * *\r\n###### Renaming a File/Folder\r\n1. Right click on the file/folder you''d like to rename.\r\n1. A dialog appears.\r\n1. Rename it.\r\n1. Click OK.\r\n\r\n###### Moving a File/Folder\r\n1. Right click on the file/folder you''d like to move.\r\n1. A Move Dialog appears.\r\n1. Select the destination folder.\r\n  - When moving a folder, You can''t move it to certain destinations in a logical sense.\r\n    - such as to a folder which is the moving folder''s sub folder. \r\n    - In such cases, a warning message will appear and you won''t be able to proceed.\r\n  - When moving a folder, all of its sub folders and files will be moved.\r\n1. Click OK.\r\n\r\n###### Deleting a File/Folder\r\n1. Right click on the file/folder you''d like to delete.\r\n1. Click OK on the confirm dialog.'), TIMESTAMP '2015-07-15 17:43:44.624', TIMESTAMP '2015-08-25 11:21:12.564'),
 (22, 'Searching Fragments on Civilizer', STRINGDECODE('Civilizer has a focus on implementing efficient and user-friendly search capability.\r\n\r\nJust click an icon {{[html] <span class=\"fa fa-search fa-1x\"></span> }} on the header or floating tool bar at the bottom of the page.  \r\nA **Search Dialog** will come up.\r\n\r\nEach icon is connected to each different {{[frgm]18 Panel }} so the search result will be shown at each corresponding Panel.  \r\nThat means you can do the maximum of 3 different searches simultaneously without going across different pages.\r\n\r\nYou can just type any search phrase to match Fragments and that''s it.  \r\nOr sometimes you want to perform a more fine-grained search and that is also possible.\r\n'), TIMESTAMP '2015-07-17 14:25:56.537', TIMESTAMP '2015-07-17 14:31:14.379'),
-(23, 'Basic Operations for Search Dialog', STRINGDECODE('###### Default Rules for Search Phrase.\r\n- You can separate multiple Search keywords with one or more spaces.\r\n- If you have a search phrase with some space characters in it and you want Civilizer to treat it as one single search phrase, surround the phrase with **double quotation marks (\")**.\r\n  - For instance, if you type --> {{[clr-br] big data }}, the result may match a phrase like --> {{[clr-br] What you have is a big chunk of useless data. }}\r\n  - On the other hand, if you type --> {{[clr-br] \"big data\" }}, the result will match an exact phrase like --> {{[clr-br] Big data will improve our society. }}\r\n  - _**Note that using single quotation marks ('') won''t work.**_\r\n- By default, when you type multiple search keywords, Civilizer finds you Fragments that match all of the words. \r\n\r\n###### Two types of Search\r\nWhen the Search Dialog appears, you will find two separate vertically placed tabs sitting on the dialog.  \r\n\r\n- Quick Search (Default)\r\n  - This tab has only one text input component.\r\n  - Just type search phrase you''d like and press Enter or click the submit button below.\r\n  - Over Quick Search, you can specify your search phrase in a more details way with {{[frgm]24 Civilizer Search Operators }}.\r\n- Normal Search\r\n  - When you click this tab, you''ll see more UI components.\r\n  - You can type specific search phrase for each specific category.\r\n    - This will highly likely get more specific and exact search results.\r\n  - As stated above, when you type multiple search keywords, the search result will match all of the words.\r\n    - For instance, a trivial search phrase --> {{[clr-br] big data }} will match phrases that contain all of those two words such as --> {{[clr-br] What you have is a big chunk of useless data. }}\r\n  - But if you check a checkbox saying ''_**Any**_'', Fragments that match any of the words would be fetched as the result.\r\n    - For instance, with **Any** checkbox checked, a search phrase --> {{[clr-br] big data }} will match phrases that contain any of those two words such as --> {{[clr-br] He is a real big!  }} or {{[clr-br] data science  }} or {{[clr-br] big data technology }}, etc.\r\n  - After completing your search phrase, you can click the submit button below to kick the search.'), TIMESTAMP '2015-07-17 14:30:30.754', TIMESTAMP '2015-08-21 15:11:52.158');             
+(23, 'Basic Operations for Search Dialog', STRINGDECODE('###### Default Rules for Search Phrase.\r\n- You can separate multiple Search keywords with one or more spaces.\r\n- If you have a search phrase with some space characters in it and you want Civilizer to treat it as one single search phrase, surround the phrase with **double quotation marks (\")**.\r\n  - For instance, if you type --> {{[clr-br] big data }}, the result may match a phrase like --> {{[clr-br] What you have is a big chunk of useless data. }}\r\n  - On the other hand, if you type --> {{[clr-br] \"big data\" }}, the result will match an exact phrase like --> {{[clr-br] Big data will improve our society. }}\r\n  - _**Note that using single quotation marks ('') won''t work.**_\r\n- By default, when you type multiple search keywords, Civilizer finds you Fragments that match all of the words. \r\n\r\n###### Two types of Search\r\nWhen the Search Dialog appears, you will find two separate vertically placed tabs sitting on the dialog.  \r\n\r\n- Quick Search (Default)\r\n  - This tab has only one text input component.\r\n  - Just type search phrase you''d like and press Enter or click the submit button below.\r\n  - Over Quick Search, you can specify your search phrase in a more details way with {{[frgm]24 Civilizer Search Operators }}.\r\n- Normal Search\r\n  - When you click this tab, you''ll see more UI components.\r\n  - You can type specific search phrase for each specific category.\r\n    - This will highly likely get more specific and exact search results.\r\n  - As stated above, when you type multiple search keywords, the search result will match all of the words.\r\n    - For instance, a trivial search phrase --> {{[clr-br] big data }} will match phrases that contain all of those two words such as --> {{[clr-br] What you have is a big chunk of useless data. }}\r\n  - But if you check a checkbox saying ''_**Any**_'', Fragments that match any of the words would be fetched as the result.\r\n    - For instance, with **Any** checkbox checked, a search phrase --> {{[clr-br] big data }} will match phrases that contain any of those two words such as --> {{[clr-br] He is a real big!  }} or {{[clr-br] data science  }} or {{[clr-br] big data technology }}, etc.\r\n  - After completing your search phrase, you can click the submit button below to kick the search.'), TIMESTAMP '2015-07-17 14:30:30.754', TIMESTAMP '2015-08-21 15:11:52.158');         
 
 INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
 (24, 'Civilizer Search Operators', STRINGDECODE('These operators have been implemented to help users tune their search phrases so that they can get more fine-grained search results.\r\nThis kind of concept already has been out there for a long time such as [Google Search Operators](http://www.googleguide.com/advanced_operators_reference.html \"\"). \r\n\r\nFor instance, the 1st search phrase will likely match more Fragments than 2nd search phrase.    \r\n1. big data databases\r\n1. \"big data\"/c tag:databases\r\n  - Just don''t care about the meaning of this search phrase for now.\r\n\r\n{{[clr-m] More Fragments of the search results usually mean less efficiency and mostly it would take more time until you reach exact information you would''ve targeted. }}  \r\nUsing the search operators usually will filter out irrelevant Fragments from your result so your search will be more efficient.\r\n* * *\r\n##### Category Operators\r\nThese operators make your search keywords match only a specific category (content, title, tag, etc.) of Fragments.  \r\nYou can always combine two or more of these operators.\r\n\r\n- {{[clr-b] : }}\r\n  - will match all of words for Fragment contents and titles.\r\n  - ex){{[clr-br]: big data }} --> will match Fragments whose content or title contains phrases such as --> {{[clr-br] data is big, big data, Big data, etc }}.\r\n- {{[clr-b] any: }}\r\n  - will match any of words for Fragment contents and titles.\r\n  - ex) {{[clr-br] any: big data }} --> will match Fragments whose content or title contain phrases such as --> {{[clr-br] big animal, database, big data, etc }}.\r\n- {{[clr-b] tag: }}\r\n  - will match Fragments whose tags contain all of the words.\r\n  - ex) {{[clr-br] tag:xml html }} --> will match Fragments having tags of {{[clr-br] xml and html altogether }}.\r\n- {{[clr-b] anytag: }}\r\n  - will match Fragments having any of the specified tags.\r\n  - ex) {{[clr-br] anytag:xml html }} --> will match Fragments having tags of {{[clr-br] xml or html or both }}.\r\n- {{[clr-b] title: }}\r\n  - will match Fragments with a title that contains all of the words.\r\n  - ex) {{[clr-br] title:install printer }} --> will match Fragments with a title that contains {{[clr-br] install and printer altogether }}.\r\n- {{[clr-b] anytitle: }}\r\n  - will match Fragments with a title containing any of the specified words.\r\n  - ex) {{[clr-br] anytitle:android ios }} --> will match Fragments with a title that contains any of {{[clr-br] android or ios or both }}.\r\n- {{[clr-b] text: }}\r\n  - will match all of words for Fragment contents.\r\n  - ex){{[clr-br] text: big data }} --> will match Fragments whose content contains phrases such as --> {{[clr-br] data is big, big data, Big data, etc }}.\r\n- {{[clr-b] anytext: }}\r\n  - will match any of words for Fragment contents.\r\n  - ex) {{[clr-br] anytext: big data }} --> will match Fragments whose content contains phrases such as --> {{[clr-br] big animal, database, big data, etc }}.\r\n- {{[clr-b] id: }}\r\n  - will match Fragment id numbers.\r\n  - ex) {{[clr-br] id: 1 3 5 9 }} --> will match 4 {{[clr-br] Fragments with id of 1, 3, 5, 9 }}.\r\n\r\n> By default, tag keywords won''t consider their hierarchies.    \r\n> But, targeting Fragments tagged by a specific tag or any of its descendants is possible using a ''/h'' flag operator. (See below)  \r\n\r\n* * *\r\n##### Flag Operators\r\nThese operators may be appended to the tail of a word (with slash) and let you control specific match requirements for that word.  \r\n\r\n- {{[clr-b] /c }}\r\n  - Case Sensitive\r\n  - ex) {{[clr-br] \"Big Data\"/c }} will match {{[clr-br] Big Data NOT big data }}\r\n- {{[clr-b] /w }}\r\n  - Whole Word\r\n  - ex) {{[clr-br] device/w }} will match {{[clr-br] device NOT devices }}\r\n- {{[clr-b] /b }} \r\n  - Beginning with\r\n  - ex) {{[clr-br] html/b }} will match {{[clr-br] html or html5 NOT xhtml }}\r\n- {{[clr-b] /e }} \r\n  - Ending with\r\n  - ex){{[clr-br] mail/e }} will match {{[clr-br] email or Gmail NOT mails }}\r\n- {{[clr-b] /r }}\r\n  - Regular Expression\r\n  - ex) {{[clr-br] https?/r }} will match {{[clr-br] http or https or https:// NOT ftp }}\r\n- {{[clr-b] /- }} \r\n  - Inverse; \r\n  - will return results not matching the pattern.\r\n  - ex) {{[clr-br] android/- }} will match {{[clr-br] any word not containing android }} \r\n- {{[clr-b] /h }}\r\n  - Considering Tag Hierarchy\r\n  - will only work for tag keywords.\r\n  - will consider each Tag''s hierarchy when performing searches.\r\n  - ex) {{[clr-br] tag:business/h }} will match any {{[clr-br]Fragment tagged by a tag ''business'' or any of its descendant tags}}\r\n\r\n> You can always combine two or more of these operators.    \r\n> ex) {{[clr-br] Down/bc }} will match {{[clr-br] Download or Downside NOT download or UpsideDown }}\r\n\r\n* * *\r\nThe above example of search phrase {{[clr-br] \"big data\"/c tag:databases }} will match  \r\nFragments whose content or title contains {{[clr-br] big data }}:\r\n- case DOES matter because of {{[clr-v] c }} Flag Operator\r\n- a word {{[clr-br] big }} needs to be followed by a word {{[clr-br] data }} because of the {{[clr-v] double quotation marks }}  \r\n\r\nand at least one of whose tags contains a word {{[clr-br] databases }}.'), TIMESTAMP '2015-07-17 15:33:38.34', TIMESTAMP '2015-08-21 15:07:43.571');   
 
 INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
 (25, 'Rules for your tag names', STRINGDECODE('As a rule, any of the following characters is NOT allowed to be used inside any tag name.\r\n\r\n- Double Quotation marks\r\n  - \"\r\n- Colon \r\n  - :\r\n- Comma\r\n  - ,\r\n- Back Slash\r\n  - \\\r\n\r\n\r\nBy convention, Civilizer uses a leading # (Hash mark) to denote {{[frgm]26 Special Tags }} such as #trash, etc.  \r\nNotice that using a leading # in your tag names is OK technically, but not so recommended.\r\n'), TIMESTAMP '2015-07-17 15:42:51.938', TIMESTAMP '2015-08-21 15:14:02.525'),
-(26, 'Special Tags On Civilizer', STRINGDECODE('Civilizer has special tags to denote some Fragments having special properties.\r\n\r\n###### \\#trash\r\nFragments with this tag denote that they have been trashed.  \r\nOnly Fragments tagged with #trash can be deleted from the database.\r\n\r\n###### \\#bookmark\r\nFragments with this tag denote that they have been bookmarked.\r\n\r\n###### \\#untagged\r\nFragments with this tag denote that they have not been tagged at all by the user.\r\n> Fragments without being tagged will do you no good at all.  \r\n> So if you find one, please tag it with one or more meaningful names.   '), TIMESTAMP '2015-07-17 15:52:07.649', TIMESTAMP '2015-08-21 17:30:55.243');   
+(26, 'Special Tags On Civilizer', STRINGDECODE('Civilizer has special tags to denote some Fragments having special properties.\r\n\r\n###### \\#trash\r\nFragments with this tag denote that they have been trashed.  \r\nOnly Fragments tagged with #trash can be deleted from the database.\r\n\r\n###### \\#bookmark\r\nFragments with this tag denote that they have been bookmarked.\r\n\r\n###### \\#untagged\r\nFragments with this tag denote that they have not been tagged at all by the user.\r\n> Fragments without being tagged will do you no good at all.  \r\n> So if you find one, please tag it with one or more meaningful names.   '), TIMESTAMP '2015-07-17 15:52:07.649', TIMESTAMP '2015-08-21 17:30:55.243'),
+(27, 'Editing Content on Fragment Editor', STRINGDECODE('##### Toolbar Menu Basics\r\n- Toolbar Menus are provided to help users do the following and others:\r\n - styling the text\r\n   - Heading, Bold, Italic, Strike-through, Underline, Colorizing.\r\n - structuring the text\r\n   - Unordered list(Bulleted list), Ordered list(Numeric list)\r\n   - Quoting\r\n   - Line indenting/outdenting\r\n - Adding links to images/web pages/Fragments.\r\n- You need to first **select text (or multiple lines of text)** before executing the menus.\r\n- Each menu corresponds to one of{{[tag] 1 }} commands or {{[frgm]28 Civilizer Custom Markup commands }}.\r\n - So alternatively, you can type the underling commands directly without using toolbar menus and sometimes it is more faster.\r\n- Also most of the menus have their own shortcut keys assigned.\r\n - When you hover on each menu, a simple tooltip message will appear to let you know which shortcut key sequence it is assigned to.\r\n\r\n* * *\r\n##### Extra Functionalities\r\n- **_Line Indenting/Outdenting_**\r\n - Moving lines by a single space can be done using the following toolbar menus:\r\n   - Indent (Move Right) : {{[html] <span class=\"fa fa-indent\"></span> }} \r\n   - Outdent (Move Left) : {{[html] <span class=\"fa fa-outdent\"></span> }} \r\n - Also you can move lines by 4 spaces using the TAB/SHIFT key press:\r\n   - {{[clr-b] Indent by 4 spaces : press the TAB key }}\r\n   - {{[clr-b] Outdent by 4 spaces : press the SHIFT + TAB key }}\r\n   - These functions are not associated with any toolbar menu.\r\n   - These functions are useful if you want {{[frgm]5 preformat }} multiple lines at once.\r\n- **_Text Colorizing_**\r\n - By Colorizing some of your text, you can make it more distinguishable than just styling it with bold or italic.\r\n - Drop down menus for colorizing can appear by hovering on the toolbar menu located on the far right. (an icon of a small triangle)\r\n - First select the text (or multiple lines) you want to colorize, and then click one of the menu.\r\n - No shortcut keys are associated with the menus.\r\n - This function is provided via one of {{[frgm]28 Civilizer Custom Markup commands }}.\r\n   - Markdown doesn''t provide any styling of colorizing.\r\n- **_A Link to a image or web page_**\r\n - {{[clr-b] Full URLs to any web page will get clickable automatically. }}\r\n   - Any text starting with `http://` or `https://` will be recognized as a link to a web page.\r\n     - e.g. just typing `http://www.google.com` will result in http://www.google.com\r\n     - To prevent a specific URL from being clickable, do either of the following:\r\n       - Wrap the URL text with Markdown literal syntax (`` `...` ``). (Refer to {{[frgm]5 this }})\r\n         - e.g. `` `http://www.google.com` ``\r\n         - **Output** : `http://www.google.com`\r\n       - Or select the URL text and click the toolbar menu of **\"Code\"** (a book icon)\r\n       - Or select the URL text and press Control + Shift + C\r\n  - {{[clr-b] Any link to any of the following image file types will be rendered as the image itself automatically. }}\r\n     - _**PNG, JPG, GIF, BMP, ICO**_\r\n     - The image type will be identified by the file extension.\r\n     - Any image URL with no file extension or neither of the above won''t get rendered as image and will get rendered simply as a clickable URL.\r\n       - In this case, use the Markdown image link syntax as illustrated {{[frgm]7 here }}.\r\n- **_A Link to a Fragment_**\r\n - Click the toolbar menu {{[html]<span class=\"fa fa-link\"></span> }}\r\n - Or Press shortcut key _Control + Shift + F_\r\n- **_A Link to a File_**\r\n - When you have some files stored in your {{[frgm]20 File Box }}, you can insert links to them.\r\n - Refer to the section of **Inserting a link to a File into a Fragment** on {{[frgm]21 this Fragment }}.\r\n- **_A Link to a Tag_**\r\n - You can add a link to a Tag by the similar way you add a link to a file. \r\n   1. Grab the target Tag in the {{[html] <span style=\"color:green\" class=\"fa fa-tags\">&nbsp;&nbsp;Tag Palette</span> }} with your mouse.\r\n   1. Drag and drop it to the content textarea in Fragment Editor.\r\n   1. A custom markup text will be generated at the place where the caret was located.\r\n   1. After saving the Fragment, you can see a link to the Tag generated.\r\n\r\n* * *\r\n##### Limitations\r\n- No current support for redo/undo'), TIMESTAMP '2015-08-25 10:01:07.256', TIMESTAMP '2015-08-26 12:36:55.586');               
+
+INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
+(28, 'Civilizer Custom Markup Commands', STRINGDECODE('##### Civilizer Custom Markup Commands\r\n_Civilizer Custom Markup Commands_ provides some extended functionalities for some use cases where {{[tag] 1 }} might have some problems in supporting.\r\n\r\n##### Syntax\r\nThe syntax is either of the following. (The syntax form has been burrowed from [Piggydb](http://piggydb.jp/en/d/1#r23))\r\n- {{[clr-br] &#123;&#123;[ }}command name{{[clr-br] ] }} target text ... {{[clr-br] &#125;&#125; }}\r\n- {{[clr-br] &#123;&#123;{[ }}command name{{[clr-br] ] }} target text ... {{[clr-br] }&#125;&#125; }}\r\n\r\nText inside [ ] denotes name of the command and the command will apply to any content inside double (or triple) curly brackets.\r\n\r\ne.g. \r\n- Most apples are &#123;&#123;[clr-r] red &#125;&#125;  \r\n- **Output**:  \r\n - Most apples are {{[clr-r]red }}\r\n\r\n* * *\r\n##### References\r\n- **Colorizing Commands**\r\n - These commands can be used to colorize any text inside it.\r\n - In Fragment Editor, when you hover on the toolbar menu located on the far right, a colorful drop down menu will appear.\r\n   - Just clicking one of them is equivalent to manually typing a corresponding command (illustrated below).\r\n - Currently, each command is:\r\n   - &#123;&#123;[clr-c] ... &#125;&#125;  {{[clr-c] Cyan color }}\r\n   - &#123;&#123;[clr-b] ... &#125;&#125;  {{[clr-b] Blue color }}\r\n   - &#123;&#123;[clr-r] ... &#125;&#125;  {{[clr-r] Red color }}\r\n   - &#123;&#123;[clr-g] ... &#125;&#125;  {{[clr-g] Green color }}\r\n   - &#123;&#123;[clr-y] ... &#125;&#125;  {{[clr-y] Yellow color }}\r\n   - &#123;&#123;[clr-m] ... &#125;&#125;  {{[clr-m] Magenta color }}\r\n   - &#123;&#123;[clr-v] ... &#125;&#125;  {{[clr-v] Violet color }}\r\n   - &#123;&#123;[clr-br] ... &#125;&#125;  {{[clr-br] Brown color }}\r\n- **Line Styling Commands**\r\n - **Strike-through**\r\n   - &#123;&#123;[st] ... &#125;&#125;\r\n   - e.g.\r\n     - &#123;&#123;[st] You can make some text deprecated like this &#125;&#125; \r\n     - **Output** : {{[st] You can make some text deprecated like this }}.\r\n - **Underline and Bold**\r\n   - &#123;&#123;[usb] ... &#125;&#125;\r\n   - e.g.\r\n     - &#123;&#123;[usb] You can make some text underlined like this &#125;&#125; \r\n     - **Output** : {{[usb] You can make some text underlined like this }}.\r\n- **Linking Commands**\r\n - **Link to a Fragment**\r\n   - &#123;&#123;[frgm] Fragment-ID ... &#125;&#125;\r\n   - This command can be inserted via the toolbar menu {{[html]<span class=\"fa fa-link\"></span> }} in Fragment Editor.\r\n   - e.g.\r\n     - &#123;&#123;[frgm]28 Link to self &#125;&#125;\r\n     - **Output** : {{[frgm]28 Link to self }} \r\n - **Link to a Tag**\r\n    - &#123;&#123;[tag] Tag-ID ... &#125;&#125;\r\n    - Manually typing this command doesn''t make sense.\r\n    - You should use a dedicated **Drag & Drop** functionality to insert the command.\r\n      - Refer to the section of _**A Link to a Tag**_ in {{[frgm]27 this Fragment }}.\r\n    - e.g.\r\n      - &#123;&#123;[tag]3 &#125;&#125;\r\n      - **Output** : {{[tag]3 }}\r\n - **Link to a File**\r\n    - &#123;&#123;[file] File-ID ... &#125;&#125;\r\n    - Manually typing this command doesn''t make sense.\r\n    - You should use a dedicated **Drag & Drop** functionality to insert the command.\r\n      - Refer to the section of **Inserting a link to a File into a Fragment** on {{[frgm]21 this Fragment }}.\r\n- **Inline HTML Commands**\r\n - {{[clr-v] Markdown basically accepts any HTML tags, however, Civilizer is blocking this feature for various reasons. }}\r\n - But Inline HTML Commands as follow will let the browser interpret HTML code inside them.\r\n   - For inserting **inline** HTMLs (double curly brackets) : &#123;&#123;[html] ... HTML ... &#125;&#125;\r\n   - For inserting **block** HTMLs (triple curly brackets) : &#123;&#123;&#123;[html] ... HTML ... &#125;&#125;&#125;\r\n - e.g.\r\n   - &#123;&#123;[html] <i><b>Bold and Italic By HTML</b></i> &#125;&#125;\r\n   - {{[html] <i><b>Bold and Italic By HTML</b></i> }}\r\n\r\n> Sometimes ill-formed HTML code (such as with inconsistent opening and closing tags) might get your browser dump very ugly page layout (or nothing at all) so be careful.  \r\n> When you copy and paste any HTMLs inside Inline HTML Commands, review the HTMLs very carefully and {{[clr-r] remove any Javascript code from the HTMLs. }}  \r\n> Also note that Civilizer will ignore any of the following tags inside Inline HTML Commands.  \r\n>    - <html>  \r\n>    - <head>  \r\n>    - <body>  \r\n>    - <link>  \r\n>    - <script>  '), TIMESTAMP '2015-08-25 15:54:34.373', TIMESTAMP '2015-08-26 12:17:37.743');            
 
 INSERT INTO PUBLIC.TAG(TAG_ID, TAG_NAME) VALUES
 (1, 'markdown'),

(406, 5, 25),
(407, 3, 16),
(408, 4, 16),
(409, 3, 15),
(410, 5, 15),
(423, 3, 26),
(424, 4, 26),
(437, 3, 17),
(438, 5, 17),
(447, 3, 19),
(448, 5, 19); 

INSERT INTO PUBLIC.FRAGMENT2FRAGMENT(FRAGMENT2FRAGMENT_ID, FROM_ID, TO_ID) VALUES
(1, 7, 6),


INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
(7, 'markdown - image', STRINGDECODE('    Inline style:\r\n        ![alternative text](URL_to_image \"optional title\")\r\n\r\n    Example:\r\n        ![Linux Penguin](https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcRwUqkWOMq9PEo1qZUyjjaMcToXvwNjJyYH1w982alY0iivYo0k)\r\n###### Output:\r\n![Linux Penguin](https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcRwUqkWOMq9PEo1qZUyjjaMcToXvwNjJyYH1w982alY0iivYo0k)\r\n* * *\r\n    Reference style:\r\n        ![alternative text][label]\r\n\r\n\r\n        [label]: URL_to_image \"optional title\"\r\n\r\nExample:  \r\n`![Batman][000]`\r\n\r\n`[000]: https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTk-E0CVdOAiWPGhFwNQKUuTX-qZM2E0PQAebU0U45sl-6mt69h1w \"Batman\"`  \r\n\r\n###### Output:\r\n![Batman][000]\r\n\r\n[000]: https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTk-E0CVdOAiWPGhFwNQKUuTX-qZM2E0PQAebU0U45sl-6mt69h1w \"Batman\"'), TIMESTAMP '2015-06-13 17:43:09.831', TIMESTAMP '2015-06-13 17:54:44.339'),
(8, 'markdown - Manual Line Breaks', STRINGDECODE('End a line with two or more spaces:  \r\n({{[clr-br] {space} }} denotes a space character for the below examples )\r\n\r\n        This line has two spaces at the end,{{[clr-br] {space}{space} }}\r\n        So the next line will break like this;\r\n\r\n        Without spaces at the end,\r\n        it won''t break at all.\r\n###### Output:\r\nThis line has two spaces at the end,    \r\nSo the next line will break like this;\r\n\r\nWithout spaces at the end,\r\nit won''t break at all.\r\n\r\n* * *\r\nSometimes you want blank lines between data (paragraph, table, image, ...) but Markdown won''t allow it.  \r\nInsert {{[clr-br] `&nbsp;{space}{space}` }} in that case.\r\n    \r\n        ###### This line is followed by a blank line and a line of sentence{{[clr-br] {space}{space} }}\r\n        {{[clr-br]&nbsp;{space}{space} }}\r\n        ###### Note the above blank line\r\n        \r\n###### Output:\r\n###### This line is followed by a blank line and a line of sentence\r\n&nbsp;  \r\n###### Note the above blank line'), TIMESTAMP '2015-06-13 18:02:00.926', TIMESTAMP '2015-08-25 10:38:39.934'),
(9, 'markdown - Table (standard style)', STRINGDECODE('    First Header  | Second Header\r\n    ------------- | -------------\r\n    Content Cell  | Content Cell\r\n    Content Cell  | Content Cell\r\n###### Output:\r\nFirst Header  | Second Header\r\n------------- | -------------\r\nContent Cell  | Content Cell\r\nContent Cell  | Content Cell\r\n'), TIMESTAMP '2015-06-13 18:29:20.161', TIMESTAMP '2015-06-13 18:37:16.392'),
(10, 'markdown - Table (Github style)', STRINGDECODE('    | Left align | Right align | Center align |\r\n    |:-----------|------------:|:------------:|\r\n    |This        |This         |This     \r\n    |column      |column       |column    \r\n    |will        |will         |will     \r\n    |be          |be           |be      \r\n    |left        |right        |center    \r\n    |aligned     |aligned      |aligned\r\n\r\n###### Output:\r\n| Left align | Right align | Center align |\r\n|:-----------|------------:|:------------:|\r\n|This        |This         |This     \r\n|column      |column       |column    \r\n|will        |will         |will     \r\n|be          |be           |be      \r\n|left        |right        |center    \r\n|aligned     |aligned      |aligned'), TIMESTAMP '2015-06-13 18:31:43.561', TIMESTAMP '2015-06-13 18:37:31.893'),
(11, 'markdown - Backslash escapes', STRINGDECODE('Markdown provides backslash escapes for the following characters:\r\n\r\n    \\   backslash\r\n    `   backtick\r\n    *   asterisk\r\n    _   underscore\r\n    {}  curly braces\r\n    []  square brackets\r\n    ()  parentheses\r\n    #   hash mark\r\n    +   plus sign\r\n    -   minus sign (hyphen)\r\n    .   dot\r\n    !   exclamation mark'), TIMESTAMP '2015-06-24 17:01:38.77', TIMESTAMP '2015-07-12 14:05:41.954'),
(12, 'markdown - How to insert a literal | character inside table cells', STRINGDECODE('{{[clr-r] The | character is used to format tables in Markdown, but it is not escapable by backslash. }}\r\n\r\nFor instance, the following table won''t be rendered correctly\r\n\r\n###### Input:  \r\n\r\n    AND  | OR\r\n    -----|----\r\n    &&   | \\|\\|\r\n\r\n###### Output:\r\n\r\nAND  | OR\r\n-----|----\r\n&&   | \\|\\|\r\n&nbsp;  \r\n* * *\r\n**[Solution]** You can use a HTML entity number {{[clr-b] `&#124;` }} for the literal | in this case.\r\n\r\n###### Input:  \r\n\r\n    AND  | OR\r\n    -----|----\r\n    &&   | &#124;&#124;\r\n\r\n###### Output:\r\n\r\nAND  | OR\r\n-----|----\r\n&&   | &#124;&#124;'), TIMESTAMP '2015-07-09 07:58:13.305', TIMESTAMP '2015-07-14 10:12:42.235');            

INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
(13, 'markdown - Horizontal Lines', STRINGDECODE('Horizontal Lines:\r\n    * * *\r\n    - - -\r\n\r\n###### Output:\r\n* * *\r\n- - -\r\n'), TIMESTAMP '2015-07-12 14:03:36.466', TIMESTAMP '2015-07-12 14:05:02.605'),
(14, 'Fragment', STRINGDECODE('###### What is a Fragment?\r\n{{[clr-b] Fragment }} is a unit of data Civilizer manages for you.  \r\n\r\n>[Notice] The concept and idea of Fragment have been borrowed from [Piggydb](http://piggydb.jp/en/d/1#r23 \"\").   \r\n>Some details are different, but I think the overall idea is almost identical with that of Piggydb.\r\n\r\n* * *\r\n###### Examples of Fragment\r\nFor instance, following things can be Fragments:\r\n- knowledge/expertise for your job\r\n- temporary memo/notes\r\n- schedule/plan\r\n- detailed procedures you often forget for infrequent tasks\r\n  - e.g. installing printer drivers on your computers, submitting a tax return\r\n- expressions/vocabularies (e.g. when you learn a foreign language)\r\n- ideas/inspirations\r\n- todo list for your job or life\r\n- insightful maxims/proverbs\r\n- humors and etc.  \r\nWhat you are reading right now is a Fragment too.\r\n* * *\r\n###### Content of a Fragment.\r\n- Fragments contain text mostly, but it can contain any format of data current Web technology (and your particular web browser) can deal with such as hyper links, images, videos, audio, etc.\r\n- You can edit a Fragment in {{[clr-y] Markdown }} markup language.  \r\n  - Civilizer comes with a sample exemplar database where explanations of basic Markdown rules are included as Fragment forms.\r\n    - Click {{[tag] 1 }} to read them.\r\n- Also Civilizer has its own {{[frgm]28 Custom Markup Commands }} to provide some unique functionalities  and accomplish some of application-specific needs.\r\n* * *\r\n###### Structuring Fragments\r\nFragments can be structured form of data (most of time, structured data is a lot more efficient than non-structured data) with:\r\n- {{[frgm]16 Tagging }}\r\n  - e.g. This Fragment is tagged with two terms. (civilizer, concepts)\r\n- Relating one with another\r\n  - If you find two or more of Fragments that have similarities/contrasts or share some properties, you can relate them.\r\n  - See {{[frgm]17 Basic Operations for Fragments }} for how to do it.\r\n* * *\r\n{{[clr-g] Recommendations in editing and managing a Fragment: }}\r\n- Keep it as concise as possible.\r\n  - If a Fragment gets too big, divide it into several smaller ones and relate them.\r\n- Attach meaningful tags.\r\n- Relate Fragments if you find any semantic relationship among them.\r\n- Bookmark Fragments you can think you access frequently.\r\n\r\n'), TIMESTAMP '2015-07-12 14:55:07.81', TIMESTAMP '2015-08-26 12:29:31.179'),
(15, 'Fragment Editor', STRINGDECODE('Fragments can be edited with Fragment Editor which is basically a Markdown editor.\r\n\r\n##### Trigger the Fragment Editor for a new Fragment\r\n>Click a button {{[html] <span class=\"new-fragment-editor-trigger-on-toolbar\"><span class=\"fa fa-plus-square fa-1x\"></span></span> }} at the upper-left corner or bottom-left corner of the page.  \r\nThose buttons are visible all the time.\r\n\r\n##### Trigger the Fragment Editor for an existing Fragment\r\n> 1. {{[clr-y] Right click }} on the header of each Fragment.  \r\n>   - The header has a message such as {{[html] <span class=\"fa fa-wrench\"> Right Click for Menu</span> }} on it.  \r\n> 1. It will show you a context menu.  \r\n> 1. Then click _**Edit**_.  \r\n\r\n##### The editor consists of the following components (in a top to bottom order)\r\n1. Input for a Fragment Title\r\n1. Input for Tag names\r\n1. Toolbar to assist you in inserting {{[tag] 1 }} commands or {{[frgm]28 Civilizer Custom Markup commands }}.\r\n1. Textarea for your content\r\n  - See {{[frgm]27 this }} for details regarding how to edit your content.\r\n1. Buttons\r\n  1. Preview button\r\n    - It allows you to preview the HTML output from your editing prior to saving the content.\r\n    - Frequent preview is recommended.\r\n  1. Save button\r\n    - It saves the Fragment into the database.\r\n\r\n##### Extra features\r\n- You can drag around the editor by grabbing either of:\r\n  - Title bar (where the close button {{[html]<span class=\"fa fa-close warning-color\" ></span> is located }})\r\n  - Bottom section in gray color where Preview and Save buttons are located.\r\n- You can resize the editor.\r\n- You can quickly minimize/restore the editor by double clicking on its title bar.\r\n'), TIMESTAMP '2015-07-13 11:03:27.823', TIMESTAMP '2015-08-26 12:28:50.496');     

INSERT INTO PUBLIC.FRAGMENT(FRAGMENT_ID, TITLE, CONTENT, CREATION_DATETIME, UPDATE_DATETIME) VALUES
(16, 'Tags on Civilizer', STRINGDECODE('https://en.wikipedia.org/wiki/Tag_(metadata)\r\n\r\nIn Civilizer, a {{[clr-b] Tag }} is a metadata assigned to each Fragment and it lets you know what property that Fragment has or what category it belongs to.\r\n\r\n> [Notice] Every Fragment has to be tagged with at least one tag.    \r\n> As a rule, Civilizer does not allow non-tagged Fragments.    \r\n> If you omit tagging when you save a Fragment, Civilizer will tag it with a special tag named  {{[clr-v] #untagged }}.  \r\n\r\nAccording to the Wikipedia''s [definition](https://en.wikipedia.org/wiki/Tag_(metadata) \"\"), a tag is a non-hierarchical keyword or term, but in Civilizer, tags can have hierarchy, which means that they can have parent or children.\r\n\r\nTagging doesn''t have any special rule so assigning which terms or words as your tags can be entirely up to you except {{[frgm]25 these rules }}.'), TIMESTAMP '2015-07-14 11:40:19.495', TIMESTAMP '2015-08-21 15:17:08.395'),
