diff --git a/v1.1/metadata-resources.md b/v1.1/metadata-resources.md
index e79b673b..63e6069f 100644
--- a/v1.1/metadata-resources.md
+++ b/v1.1/metadata-resources.md
@@ -21,7 +21,7 @@ In addition to template and sample files we also produce Project Open Data Metad
### JSON Schema Files ###
-* 1.1 Schema (Draft): [Dataset](/v1.1/schema/dataset.json) and [Catalog](/v1.1/schema/catalog.json)
+* [1.1 Schema](/v1.1/schema/catalog.json) (Draft). The [Catalog](/v1.1/schema/catalog.json) schema includes by reference the [Dataset](/v1.1/schema/dataset.json), [Distribution](/v1.1/schema/distribution.json), [Organization](/v1.1/schema/organization.json), and [vCard](/v1.1/schema/vcard.json) schemas.
### JSON-LD Context ###
diff --git a/v1.1/schema/catalog.json b/v1.1/schema/catalog.json
new file mode 100755
index 00000000..abf14f68
--- /dev/null
+++ b/v1.1/schema/catalog.json
@@ -0,0 +1,58 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "id": "https://project-open-data.cio.gov/v1.1/schema/catalog.json#",
+ "title": "Project Open Data Catalog",
+ "description": "Validates an entire collection of Project Open Data metadata JSON objects. Agencies produce said collections in the form of Data.json files.",
+ "type": "object",
+ "dependencies": {
+ "@type": [
+ "@context"
+ ]
+ },
+ "required": [
+ "conformsTo",
+ "dataset"
+ ],
+ "properties": {
+ "@context": {
+ "title": "Metadata Context",
+ "description": "URL or JSON object for the JSON-LD Context that defines the schema used",
+ "type": "string",
+ "format": "uri"
+ },
+ "@id": {
+ "title": "Metadata Catalog ID",
+ "description": "IRI for the JSON-LD Node Identifier of the Catalog. This should be the URL of the data.json file itself.",
+ "type": "string",
+ "format": "uri"
+ },
+ "@type": {
+ "title": "Metadata Context",
+ "description": "IRI for the JSON-LD data type. This should be dcat:Catalog for the Catalog",
+ "enum": [
+ "dcat:Catalog"
+ ]
+ },
+ "conformsTo": {
+ "description": "Version of Schema",
+ "title": "Version of Schema",
+ "enum": [
+ "https://project-open-data.cio.gov/v1.1/schema"
+ ]
+ },
+ "describedBy": {
+ "description": "URL for the JSON Schema file that defines the schema used",
+ "title": "Data Dictionary",
+ "type": "string",
+ "format": "uri"
+ },
+ "dataset": {
+ "type": "array",
+ "items": {
+ "$ref": "dataset.json",
+ "minItems": 1,
+ "uniqueItems": true
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/v1.1/schema/dataset.json b/v1.1/schema/dataset.json
new file mode 100755
index 00000000..9c47ef45
--- /dev/null
+++ b/v1.1/schema/dataset.json
@@ -0,0 +1,414 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "id": "https://project-open-data.cio.gov/v1.1/schema/dataset.json#",
+ "title": "Project Open Data Dataset",
+ "description": "The metadata format for all federal open data. Validates a single JSON object entry (as opposed to entire Data.json catalog).",
+ "type": "object",
+ "required": [
+ "bureauCode",
+ "programCode",
+ "title",
+ "description",
+ "keyword",
+ "modified",
+ "publisher",
+ "contactPoint",
+ "identifier",
+ "accessLevel"
+ ],
+ "properties": {
+ "@type": {
+ "title": "Metadata Context",
+ "description": "IRI for the JSON-LD data type. This should be dcat:Dataset for each Dataset",
+ "enum": [
+ "dcat:Dataset"
+ ]
+ },
+ "accessLevel": {
+ "description": "The degree to which this dataset could be made publicly-available, regardless of whether it has been made available. Choices: public (Data asset is or could be made publicly available to all without restrictions), restricted public (Data asset is available under certain use restrictions), or non-public (Data asset is not available to members of the public)",
+ "title": "Public Access Level",
+ "enum": [
+ "public",
+ "restricted public",
+ "non-public"
+ ]
+ },
+ "rights": {
+ "title": "Rights",
+ "description": "This may include information regarding access or restrictions based on privacy, security, or other policies. This should also provide an explanation for the selected \"accessLevel\" including instructions for how to access a restricted file, if applicable, or explanation for why a \"non-public\" or \"restricted public\" data assetis not \"public,\" if applicable. Text, 255 characters.",
+ "anyOf": [
+ {
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 255
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "accrualPeriodicity": {
+ "title": "Frequency",
+ "description": "Frequency with which dataset is published.",
+ "anyOf": [
+ {
+ "enum": [
+ "irregular"
+ ]
+ },
+ {
+ "type": "string",
+ "pattern": "^R\\d*\\/P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "bureauCode": {
+ "title": "Bureau Code",
+ "description": "Federal agencies, combined agency and bureau code from OMB Circular A-11, Appendix C in the format of 015:010
.",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "[0-9]{3}:[0-9]{2}"
+ },
+ "minItems": 1,
+ "uniqueItems": true
+ },
+ "contactPoint": {
+ "$ref": "vcard.json"
+ },
+ "describedBy": {
+ "title": "Data Dictionary",
+ "description": "URL to the data dictionary for the dataset or API. Note that documentation other than a data dictionary can be referenced using Related Documents as shown in the expanded fields.",
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "uri"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "describedByType": {
+ "title": "Data Dictionary Type",
+ "description": "The machine-readable file format (IANA Media Type or MIME Type) of the distribution’s describedBy URL",
+ "anyOf": [
+ {
+ "pattern": "^[-\\w]+/[-\\w]+(\\.[-\\w]+)*([+][-\\w]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "conformsTo": {
+ "title": "Data Standard",
+ "description": "URI used to identify a standardized specification the dataset conforms to",
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "uri"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "dataQuality": {
+ "title": "Data Quality",
+ "description": "Whether the dataset meets the agency’s Information Quality Guidelines (true/false).",
+ "anyOf": [
+ {
+ "type": "boolean"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "description": {
+ "title": "Description",
+ "description": "Human-readable description (e.g., an abstract) with sufficient detail to enable a user to quickly understand whether the asset is of interest.",
+ "type": "string"
+ },
+ "distribution": {
+ "title": "Distribution",
+ "description": "A container for the array of Distribution objects",
+ "anyOf": [
+ {
+ "type": "array",
+ "items": {
+ "$ref": "distribution.json",
+ "minItems": 1,
+ "uniqueItems": true
+ }
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "identifier": {
+ "title": "Unique Identifier",
+ "description": "A unique identifier for the dataset or API as maintained within an Agency catalog or database.",
+ "type": "string",
+ "minLength": 1
+ },
+ "issued": {
+ "title": "Release Date",
+ "description": "Date of formal issuance.",
+ "anyOf": [
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^R\\d*\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?\\/P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "keyword": {
+ "title": "Tags",
+ "description": "Tags (or keywords) help users discover your dataset; please include terms that would be used by technical and non-technical users.",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "minLength": 1
+ },
+ "minItems": 1
+ },
+ "landingPage": {
+ "title": "Homepage URL",
+ "description": "Alternative landing page used to redirect user to a contextual, Agency-hosted “homepage” for the Dataset or API when selecting this resource from the Data.gov user interface.",
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "uri"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "language": {
+ "title": "Language",
+ "description": "The language of the dataset.",
+ "anyOf": [
+ {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "^(((([A-Za-z]{2,3}(-([A-Za-z]{3}(-[A-Za-z]{3}){0,2}))?)|[A-Za-z]{4}|[A-Za-z]{5,8})(-([A-Za-z]{4}))?(-([A-Za-z]{2}|[0-9]{3}))?(-([A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3}))*(-([0-9A-WY-Za-wy-z](-[A-Za-z0-9]{2,8})+))*(-(x(-[A-Za-z0-9]{1,8})+))?)|(x(-[A-Za-z0-9]{1,8})+)|((en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)|(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)))$"
+ }
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "license": {
+ "title": "License",
+ "description": "The license dataset or API is published with. See Open Licenses for more information.",
+ "anyOf": [
+ {
+ "type": "string",
+ "format": "uri"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "modified": {
+ "title": "Last Update",
+ "description": "Most recent date on which the dataset was changed, updated or modified.",
+ "anyOf": [
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^R\\d*\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?\\/P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ }
+ ]
+ },
+ "primaryITInvestmentUII": {
+ "title": "Primary IT Investment UII",
+ "description": "For linking a dataset with an IT Unique Investment Identifier (UII)",
+ "anyOf": [
+ {
+ "type": "string",
+ "pattern": "[0-9]{3}-[0-9]{9}"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "programCode": {
+ "title": "Program Code",
+ "description": "Federal agencies, list the primary program related to this data asset, from the Federal Program Inventory. Use the format of 015:001
",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "[0-9]{3}:[0-9]{3}"
+ },
+ "minItems": 1,
+ "uniqueItems": true
+ },
+ "publisher": {
+ "$ref": "organization.json"
+ },
+ "references": {
+ "title": "Related Documents",
+ "description": "Related documents such as technical information about a dataset, developer documentation, etc.",
+ "anyOf": [
+ {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "format": "uri"
+ },
+ "minItems": 1,
+ "uniqueItems": true
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "spatial": {
+ "title": "Spatial",
+ "description": "The range of spatial applicability of a dataset. Could include a spatial region like a bounding box or a named place.",
+ "anyOf": [
+ {
+ "type": "string",
+ "minLength": 1
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "systemOfRecords": {
+ "title": "System of Records",
+ "description": "If the systems is designated as a system of records under the Privacy Act of 1974, provide the URL to the System of Records Notice related to this dataset.",
+ "anyOf": [
+ {
+ "type": "string",
+ "minLength": 1
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "temporal": {
+ "title": "Temporal",
+ "description": "The range of temporal applicability of a dataset (i.e., a start and end date of applicability for the data).",
+ "anyOf": [
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?(\\/)P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
+ },
+ {
+ "type": "string",
+ "pattern": "^R\\d*\\/([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?\\/P(?=\\w*\\d)(?:\\d+Y|Y)?(?:\\d+M|M)?(?:\\d+W|W)?(?:\\d+D|D)?(?:T(?:\\d+H|H)?(?:\\d+M|M)?(?:\\d+(?:\\.\\d{1,2})?S|S)?)?$"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "isPartOf": {
+ "title": "Collection",
+ "description": "The collection of which the dataset is a subset",
+ "anyOf": [
+ {
+ "type": "string",
+ "minLength": 1
+ }
+ ]
+ },
+ "theme": {
+ "title": "Category",
+ "description": "Main thematic category of the dataset.",
+ "anyOf": [
+ {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "minLength": 1
+ },
+ "minItems": 1,
+ "uniqueItems": true
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "title": {
+ "title": "Title",
+ "description": "Human-readable name of the asset. Should be in plain English and include sufficient detail to facilitate search and discovery.",
+ "type": "string"
+ }
+ }
+}
\ No newline at end of file
diff --git a/v1.1/schema/distribution.json b/v1.1/schema/distribution.json
new file mode 100644
index 00000000..ad81c11f
--- /dev/null
+++ b/v1.1/schema/distribution.json
@@ -0,0 +1,72 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "id": "https://project-open-data.cio.gov/v1.1/schema/distribution.json#",
+ "title": "Project Open Data Distribution",
+ "description": "Validates an entire collection of common core metadata JSON objects. Agencies produce said collections in the form of Data.json files.",
+ "type": "object",
+ "dependencies": {
+ "downloadURL": [
+ "mediaType"
+ ]
+ },
+ "properties": {
+ "@type": {
+ "title": "Metadata Context",
+ "description": "IRI for the JSON-LD data type. This should be dcat:Distribution for each Distribution",
+ "enum": [
+ "dcat:Distribution"
+ ]
+ },
+ "downloadURL": {
+ "title": "Download URL",
+ "description": "URL providing direct access to a downloadable file of a dataset",
+ "type": "string",
+ "format": "uri"
+ },
+ "mediaType": {
+ "title": "Media Type",
+ "description": "The machine-readable file format (IANA Media Type or MIME Type) of the distribution’s downloadURL",
+ "pattern": "^[-\\w]+/[-\\w]+(\\.[-\\w]+)*([+][-\\w]+)?$",
+ "type": "string"
+ },
+ "format": {
+ "title": "Format",
+ "description": "A human-readable description of the file format of a distribution",
+ "type": "string"
+ },
+ "accessURL": {
+ "title": "Access URL",
+ "description": "URL providing indirect access to a dataset",
+ "type": "string",
+ "format": "uri"
+ },
+ "description": {
+ "title": "Description",
+ "description": "Human-readable description of the distribution",
+ "type": "string"
+ },
+ "title": {
+ "title": "Title",
+ "description": "Human-readable name of the distribution",
+ "type": "string"
+ },
+ "conformsTo": {
+ "title": "Data Standard",
+ "description": "URL providing indirect access to a dataset",
+ "type": "string",
+ "format": "uri"
+ },
+ "describedBy": {
+ "title": "Data Dictionary",
+ "description": "URL to the data dictionary for the distribution found at the downloadURL",
+ "type": "string",
+ "format": "uri"
+ },
+ "describedByType": {
+ "title": "Data Dictionary Type",
+ "description": "The machine-readable file format (IANA Media Type or MIME Type) of the distribution’s describedBy URL",
+ "pattern": "^[-\\w]+/[-\\w]+(\\.[-\\w]+)*([+][-\\w]+)?$",
+ "type": "string"
+ }
+ }
+}
\ No newline at end of file
diff --git a/v1.1/schema/organization.json b/v1.1/schema/organization.json
new file mode 100644
index 00000000..751e4de4
--- /dev/null
+++ b/v1.1/schema/organization.json
@@ -0,0 +1,28 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "id": "https://project-open-data.cio.gov/v1.1/schema/organization.json#",
+ "title": "Project Open Data Organization",
+ "description": "A Dataset Publisher Organization as a foaf:Agent object",
+ "type": "object",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "@type": {
+ "title": "Metadata Context",
+ "description": "IRI for the JSON-LD data type. This should be org:Organization for each publisher",
+ "enum": [
+ "org:Organization"
+ ]
+ },
+ "name": {
+ "title": "Publisher Name",
+ "description": "A full formatted name, eg Firstname Lastname",
+ "type": "string"
+ },
+ "subOrganizationOf": {
+ "title": "Parent Organization",
+ "$ref": "organization.json"
+ }
+ }
+}
\ No newline at end of file
diff --git a/v1.1/schema/vcard.json b/v1.1/schema/vcard.json
new file mode 100644
index 00000000..6b4c0c5a
--- /dev/null
+++ b/v1.1/schema/vcard.json
@@ -0,0 +1,31 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "id": "https://project-open-data.cio.gov/v1.1/schema/vcard.json#",
+ "title": "Project Open Data ContactPoint vCard",
+ "description": "A Dataset ContactPoint as a vCard object",
+ "type": "object",
+ "required": [
+ "fn",
+ "hasEmail"
+ ],
+ "properties": {
+ "@type": {
+ "title": "Metadata Context",
+ "description": "IRI for the JSON-LD data type. This should be vcard:Contact for contactPoint",
+ "enum": [
+ "vcard:Contact"
+ ]
+ },
+ "fn": {
+ "title": "Contact Name",
+ "description": "A full formatted name, eg Firstname Lastname",
+ "type": "string"
+ },
+ "hasEmail": {
+ "title": "Email",
+ "description": "Email address for the contact",
+ "pattern": "^mailto:([\\w.-]+@[\\w.-]+\\.[\\w.-]+)?$",
+ "type": "string"
+ }
+ }
+}
\ No newline at end of file