EASILY Store & Query
Complex Data
in any SQL database

Site is being refactored.
Please revisit soon.
Easily Store Complex Data
  • No Tables to create
  • No Indexes to create
  • No data duplication
    • Multiple references to the same object (e.g. Employee) are only stored once, as a single object
    • That single object can be graphed into the data structure as a lightweight reference from other locations (e.g. MasterList->Gamer, Team->Gamer, Event->Gamer, etc) without having to create and manage foreign keys and indexes.
{
  "PubmedArticle": {
    "MedlineCitation": {
      "_Status": "MEDLINE",
      "_Owner": "NLM",
      "PMID": {
        "_Version": "1",
        "text": "10075408"
      },
      "DateCompleted": {
        "Year": "1999",
        "Month": "09",
        "Day": "13"
      },
      "DateRevised": {
        "Year": "2019",
        "Month": "12",
        "Day": "16"
      },
      "Article": {
        "_PubModel": "Print",
        "Journal": {
          "ISSN": {
            "_IssnType": "Print",
            "text": "1350-0872"
          },
          "JournalIssue": {
            "_CitedMedium": "Print",
            "Volume": "145 ( Pt 2)",
            "PubDate": {
              "Year": "1999",
              "Month": "Feb"
            }
          },
          "Title": "Microbiology (Reading, England)",
          "ISOAbbreviation": "Microbiology (Reading, Engl.)"
        },
        "ArticleTitle": "A twisted tale: the origin and evolution of motility and chemotaxis in prokaryotes.",
        "Pagination": {
          "MedlinePgn": "279-281"
        },
        "ELocationID": {
          "_EIdType": "doi",
          "_ValidYN": "Y",
          "text": "10.1099/13500872-145-2-279"
        },
        "AuthorList": {
          "_CompleteYN": "Y",
          "Author": [
            {
              "_ValidYN": "Y",
              "LastName": "Faguy",
              "ForeName": "D M",
              "Initials": "DM"
            },
            {
              "_ValidYN": "Y",
              "LastName": "Jarrell",
              "ForeName": "K F",
              "Initials": "KF"
            }
          ]
        },
        "Language": "eng",
        "PublicationTypeList": {
          "PublicationType": {
            "_UI": "D016428",
            "text": "Journal Article"
          }
        }
      },
      "MedlineJournalInfo": {
        "Country": "England",
        "MedlineTA": "Microbiology",
        "NlmUniqueID": "9430468",
        "ISSNLinking": "1350-0872"
      },
      "CitationSubset": [
        "IM",
        "S"
      ],
      "MeshHeadingList": [
        {
          "DescriptorName": {
            "_UI": "D001105",
            "_MajorTopicYN": "N",
            "text": "Archaea"
          },
          "QualifierName": [
            {
              "_UI": "Q000235",
              "_MajorTopicYN": "Y",
              "text": "genetics"
            },
            {
              "_UI": "Q000502",
              "_MajorTopicYN": "N",
              "text": "physiology"
            }
          ]
        },
        {
          "DescriptorName": {
            "_UI": "D001412",
            "_MajorTopicYN": "N",
            "text": "Bacillus subtilis"
          },
          "QualifierName": [
            {
              "_UI": "Q000235",
              "_MajorTopicYN": "N",
              "text": "genetics"
            },
            {
              "_UI": "Q000502",
              "_MajorTopicYN": "N",
              "text": "physiology"
            }
          ]
        },
        {
          "DescriptorName": {
            "_UI": "D001419",
            "_MajorTopicYN": "N",
            "text": "Bacteria"
          },
          "QualifierName": {
            "_UI": "Q000235",
            "_MajorTopicYN": "Y",
            "text": "genetics"
          }
        },
        {
          "DescriptorName": {
            "_UI": "D018407",
            "_MajorTopicYN": "N",
            "text": "Bacterial Physiological Phenomena"
          }
        },
        {
          "DescriptorName": {
            "_UI": "D002633",
            "_MajorTopicYN": "N",
            "text": "Chemotaxis"
          },
          "QualifierName": [
            {
              "_UI": "Q000235",
              "_MajorTopicYN": "Y",
              "text": "genetics"
            },
            {
              "_UI": "Q000502",
              "_MajorTopicYN": "N",
              "text": "physiology"
            }
          ]
        },
        {
          "DescriptorName": {
            "_UI": "D019143",
            "_MajorTopicYN": "Y",
            "text": "Evolution, Molecular"
          }
        },
        {
          "DescriptorName": {
            "_UI": "D005407",
            "_MajorTopicYN": "N",
            "text": "Flagella"
          },
          "QualifierName": [
            {
              "_UI": "Q000235",
              "_MajorTopicYN": "Y",
              "text": "genetics"
            },
            {
              "_UI": "Q000502",
              "_MajorTopicYN": "N",
              "text": "physiology"
            }
          ]
        },
        {
          "DescriptorName": {
            "_UI": "D019766",
            "_MajorTopicYN": "N",
            "text": "Genes, Archaeal"
          }
        },
        {
          "DescriptorName": {
            "_UI": "D005798",
            "_MajorTopicYN": "N",
            "text": "Genes, Bacterial"
          }
        },
        {
          "DescriptorName": {
            "_UI": "D009068",
            "_MajorTopicYN": "N",
            "text": "Movement"
          }
        }
      ]
    },
    "PubmedData": {
      "History": [
        {
          "_PubStatus": "pubmed",
          "Year": "1999",
          "Month": "3",
          "Day": "13"
        },
        {
          "_PubStatus": "medline",
          "Year": "1999",
          "Month": "3",
          "Day": "13",
          "Hour": "0",
          "Minute": "1"
        },
        {
          "_PubStatus": "entrez",
          "Year": "1999",
          "Month": "3",
          "Day": "13",
          "Hour": "0",
          "Minute": "0"
        }
      ],
      "PublicationStatus": "ppublish",
      "ArticleIdList": [
        {
          "_IdType": "pubmed",
          "text": "10075408"
        },
        {
          "_IdType": "doi",
          "text": "10.1099/13500872-145-2-279"
        }
      ]
    }
  }
}
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE PubmedArticleSet PUBLIC "-//NLM//DTD PubMedArticle, 1st January 2019//EN" "https://dtd.nlm.nih.gov/ncbi/pubmed/out/pubmed_190101.dtd">
<PubmedArticleSet>
  <PubmedArticle>
    <MedlineCitation Status="MEDLINE" Owner="NLM">
      <PMID Version="1">10075408</PMID>
      <DateCompleted>
        <Year>1999</Year>
        <Month>09</Month>
        <Day>13</Day>
      </DateCompleted>
      <DateRevised>
        <Year>2019</Year>
        <Month>12</Month>
        <Day>16</Day>
      </DateRevised>
      <Article PubModel="Print">
        <Journal>
          <ISSN IssnType="Print">1350-0872</ISSN>
          <JournalIssue CitedMedium="Print">
            <Volume>145 ( Pt 2)</Volume>
            <PubDate>
              <Year>1999</Year>
              <Month>Feb</Month>
            </PubDate>
          </JournalIssue>
          <Title>Microbiology (Reading, England)</Title>
          <ISOAbbreviation>Microbiology (Reading, Engl.)</ISOAbbreviation>
        </Journal>
        <ArticleTitle>A twisted tale: the origin and evolution of motility and chemotaxis in prokaryotes.</ArticleTitle>
        <Pagination>
          <MedlinePgn>279-281</MedlinePgn>
        </Pagination>
        <ELocationID EIdType="doi" ValidYN="Y">10.1099/13500872-145-2-279</ELocationID>
        <AuthorList CompleteYN="Y">
          <Author ValidYN="Y">
            <LastName>Faguy</LastName>
            <ForeName>D M</ForeName>
            <Initials>DM</Initials>
          </Author>
          <Author ValidYN="Y">
            <LastName>Jarrell</LastName>
            <ForeName>K F</ForeName>
            <Initials>KF</Initials>
          </Author>
        </AuthorList>
        <Language>eng</Language>
        <PublicationTypeList>
          <PublicationType UI="D016428">Journal Article</PublicationType>
        </PublicationTypeList>
      </Article>
      <MedlineJournalInfo>
        <Country>England</Country>
        <MedlineTA>Microbiology</MedlineTA>
        <NlmUniqueID>9430468</NlmUniqueID>
        <ISSNLinking>1350-0872</ISSNLinking>
      </MedlineJournalInfo>
      <CitationSubset>IM</CitationSubset>
      <CitationSubset>S</CitationSubset>
      <MeshHeadingList>
        <MeshHeading>
          <DescriptorName UI="D001105" MajorTopicYN="N">Archaea</DescriptorName>
          <QualifierName UI="Q000235" MajorTopicYN="Y">genetics</QualifierName>
          <QualifierName UI="Q000502" MajorTopicYN="N">physiology</QualifierName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D001412" MajorTopicYN="N">Bacillus subtilis</DescriptorName>
          <QualifierName UI="Q000235" MajorTopicYN="N">genetics</QualifierName>
          <QualifierName UI="Q000502" MajorTopicYN="N">physiology</QualifierName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D001419" MajorTopicYN="N">Bacteria</DescriptorName>
          <QualifierName UI="Q000235" MajorTopicYN="Y">genetics</QualifierName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D018407" MajorTopicYN="N">Bacterial Physiological Phenomena</DescriptorName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D002633" MajorTopicYN="N">Chemotaxis</DescriptorName>
          <QualifierName UI="Q000235" MajorTopicYN="Y">genetics</QualifierName>
          <QualifierName UI="Q000502" MajorTopicYN="N">physiology</QualifierName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D019143" MajorTopicYN="Y">Evolution, Molecular</DescriptorName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D005407" MajorTopicYN="N">Flagella</DescriptorName>
          <QualifierName UI="Q000235" MajorTopicYN="Y">genetics</QualifierName>
          <QualifierName UI="Q000502" MajorTopicYN="N">physiology</QualifierName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D019766" MajorTopicYN="N">Genes, Archaeal</DescriptorName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D005798" MajorTopicYN="N">Genes, Bacterial</DescriptorName>
        </MeshHeading>
        <MeshHeading>
          <DescriptorName UI="D009068" MajorTopicYN="N">Movement</DescriptorName>
        </MeshHeading>
      </MeshHeadingList>
    </MedlineCitation>
    <PubmedData>
      <History>
        <PubMedPubDate PubStatus="pubmed">
          <Year>1999</Year>
          <Month>3</Month>
          <Day>13</Day>
        </PubMedPubDate>
        <PubMedPubDate PubStatus="medline">
          <Year>1999</Year>
          <Month>3</Month>
          <Day>13</Day>
          <Hour>0</Hour>
          <Minute>1</Minute>
        </PubMedPubDate>
        <PubMedPubDate PubStatus="entrez">
          <Year>1999</Year>
          <Month>3</Month>
          <Day>13</Day>
          <Hour>0</Hour>
          <Minute>0</Minute>
        </PubMedPubDate>
      </History>
      <PublicationStatus>ppublish</PublicationStatus>
      <ArticleIdList>
        <ArticleId IdType="pubmed">10075408</ArticleId>
        <ArticleId IdType="doi">10.1099/13500872-145-2-279</ArticleId>
      </ArticleIdList>
    </PubmedData>
  </PubmedArticle>
</PubmedArticleSet>
			
Example of the kind of deep, hierarchically structured data that SchemaFreeSQL can store and query. (source: Pubmed)
Query like this...
SELECT $s:Author.LastName as lastname, $s:Author.ForeName as forename ORDER BY lastname,forename LIMIT 5
...and get this
(style: )
{
  "data" : [
    {
      "forename" : "Jacobus",
      "lastname" : "Albertyn"
    },
    {
      "forename" : "Sebastián",
      "lastname" : "Albertí"
    },
    {
      "forename" : "Alicia",
      "lastname" : "Alito"
    },
    {
      "forename" : "Eladio",
      "lastname" : "Amador"
    },
    {
      "forename" : "Jan R",
      "lastname" : "Andreesen"
    }
  ],
  "success" : 1,
  "cmdname" : "query",
  "style" : "nvp"
}
	 
{
  "data" : [
    [
      "lastname",
      "forename"
    ],
    [
      "Albertyn",
      "Jacobus"
    ],
    [
      "Albertí",
      "Sebastián"
    ],
    [
      "Alito",
      "Alicia"
    ],
    [
      "Amador",
      "Eladio"
    ],
    [
      "Andreesen",
      "Jan R"
    ]
  ],
  "success" : 1,
  "cmdname" : "query",
  "style" : "colnames"
}
	 
{
  "data" : [
    [
      "Albertyn",
      "Jacobus"
    ],
    [
      "Albertí",
      "Sebastián"
    ],
    [
      "Alito",
      "Alicia"
    ],
    [
      "Amador",
      "Eladio"
    ],
    [
      "Andreesen",
      "Jan R"
    ]
  ],
  "success" : 1,
  "cmdname" : "query",
  "style" : "dataonly"
}
	 
Uses your current SQL database
SchemaFreeSQL's powerful API allows easy storage & import of Object-Oriented/Hierarchical data into YOUR database.

Continue to access your database through your existing DB Connector as you normally would.
Access your Database through the SchemaFreeSQL API when needed.

Any existing tables co-exist alongside SchemaFreeSQL's automatically-created tables in the tablespace of your choosing.

MySQL is currently supported. Other DB support is on the roadmap including PostreSQL, Microsoft SQL Server, SQLite, Oracle, and cloud offerings.
SchemafreeSQL - Diagram
Complex Data Made Simple
No Tables to Create
No Indexes to Create
Query Deeply yet Simply
"The Ultimate API to your SQL Database"