Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added shapes for expressing literature references, based on schema.org #43

Open
wants to merge 2 commits into
base: v0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,22 @@ lazy val simulation = project
moduleName := "nsg-simulation-schemas"
)

lazy val literature = project
.in(file("modules/literature"))
.enablePlugins(WorkbenchPlugin)
.disablePlugins(ScapegoatSbtPlugin, DocumentationPlugin)
.dependsOn(core)
.settings(common)
.settings(
name := "nsg-literature-schemas",
moduleName := "nsg-literature-schemas"
)

lazy val root = project
.in(file("."))
.settings(name := "nsg-schemas", moduleName := "nsg-schemas")
.settings(common, noPublish)
.aggregate(core, experiment, atlas, morphology, electrophysiology, simulation, nexusschema,nsgcommons)
.aggregate(core, experiment, atlas, morphology, electrophysiology, simulation, literature, nexusschema,nsgcommons)

lazy val common = Seq(
scalacOptions in (Compile, console) ~= (_ filterNot (_ == "-Xfatal-warnings")),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
{
"@context": [
"{{base}}/contexts/nexus/core/schema/v0.2.0",
{
"this": "{{base}}/schemas/neurosciencegraph/literature/book/v0.1.0/shapes/"
}
],
"@type": "nxv:Schema",
"shapes": [
{
"@id": "this:BookShape",
"@type": "sh:NodeShape",
"label": "schema.org book shape definition.",
"targetClass": "schema:Book",
"nodekind": "sh:BlankNodeOrIRI",
"and": [
{
"node": "{{base}}/templates/core/entity/v0.1.0/shapes/EntityShape"
},
{
"property": [
{
"path": "schema:bookEdition",
"name": "edition",
"description": "The edition of the book",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:isbn",
"name": "ISBN",
"description": "The ISBN of the book",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:author",
"name": "author(s)",
"description": "The author(s) of this book",
"or": [
{
"class": "schema:Person",
"node": "{{base}}/schemas/nexus/schemaorg/person/v0.1.0/shapes/PersonShape"
},
{
"class": "schema:Organization",
"node": "{{base}}/schemas/nexus/schemaorg/organization/v0.1.0/shapes/OrganizationShape"
}
],
"comment": "We should specify that a Book must have either at least one author *or* at least one editor"
},
{
"path": "schema:datePublished",
"name": "publicationDate",
"description": "Date of first publication",
"datatype": "xsd:date",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:editor",
"name": "editor(s)",
"description": "The editor(s) of this book",
"class": "schema:Person",
"node": "{{base}}/schemas/nexus/schemaorg/person/v0.1.0/shapes/PersonShape"
},
{
"path": "schema:keywords",
"name": "keywords",
"description": "Keywords or tags used to describe this book. Multiple entries in a keywords list are typically delimited by commas.",
"datatype": "xsd:string"
},
{
"path": "schema:license",
"name": "license",
"description": "A license document that applies to this book, typically indicated by URL.",
"nodeKind": "sh:IRI"
},
{
"path": "schema:publisher",
"name": "publisher",
"description": "The publisher of the book.",
"or": [
{
"class": "schema:Person",
"node": "{{base}}/schemas/nexus/schemaorg/person/v0.1.0/shapes/PersonShape"
},
{
"class": "schema:Organization",
"node": "{{base}}/schemas/nexus/schemaorg/organization/v0.1.0/shapes/OrganizationShape"
}
],
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:description",
"name": "description",
"description": "A description of the book.",
"datatype": "xsd:string",
"maxCount": 1
},
{
"path": "schema:name",
"name": "title",
"description": "The title of the book.",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:url",
"name": "url",
"description": "URL at which the book can be downloaded or ordered.",
"nodeKind": "sh:IRI"
}
]
}
]
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
{
"@context": [
"{{base}}/contexts/nexus/core/schema/v0.2.0",
{
"this": "{{base}}/schemas/neurosciencegraph/literature/chapter/v0.1.0/shapes/"
}
],
"@type": "nxv:Schema",
"shapes": [
{
"@id": "this:ChapterShape",
"@type": "sh:NodeShape",
"label": "schema.org chapter shape definition.",
"targetClass": "schema:Chapter",
"nodekind": "sh:BlankNodeOrIRI",
"and": [
{
"node": "{{base}}/templates/core/entity/v0.1.0/shapes/EntityShape"
},
{
"property": [
{
"path": "schema:name",
"name": "title",
"description": "The title of the chapter",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:author",
"name": "author(s)",
"description": "The author(s) of this chapter",
"or": [
{
"class": "schema:Person",
"node": "{{base}}/schemas/nexus/schemaorg/person/v0.1.0/shapes/PersonShape"
},
{
"class": "schema:Organization",
"node": "{{base}}/schemas/nexus/schemaorg/organization/v0.1.0/shapes/OrganizationShape"
}
],
"minCount": 1
},
{
"path": "schema:datePublished",
"name": "publicationDate",
"description": "Date of first publication",
"datatype": "xsd:date",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:isPartOf",
"name": "book",
"description": "The book in which this chapter appears",
"class": "schema:Book",
"node": "{{base}}/schemas/neurosciencegraph/literature/book/v0.1.0/shapes/BookShape",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:url",
"name": "url",
"description": "URL at which the full text or abstract of the chapter can be obtained.",
"nodeKind": "sh:IRI"
},
{
"path": "schema:keywords",
"name": "keywords",
"description": "Keywords or tags used to describe this chapter. Multiple entries in a keywords list are typically delimited by commas.",
"datatype": "xsd:string"
},
{
"path": "schema:license",
"name": "license",
"description": "A license document that applies to this chapter, typically indicated by URL.",
"nodeKind": "sh:IRI"
},
{
"path": "schema:pagination",
"name": "pagination",
"description": "Start and end page, or other equivalent indicator",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "http://doi.org/",
"name": "DOI",
"description": "Digital Object Identifier",
"datatype": "xsd:string",
"maxCount": 1
},
{
"path": "schema:description",
"name": "abstract",
"description": "A description of the chapter, normally the abstract or summary",
"datatype": "xsd:string",
"maxCount": 1
}
]
}
]
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"@context": [
"{{base}}/contexts/nexus/core/schema/v0.2.0",
{
"this": "{{base}}/schemas/neurosciencegraph/literature/periodical/v0.1.0/shapes/"
}
],
"@type": "nxv:Schema",
"shapes": [
{
"@id": "this:PeriodicalShape",
"@type": "sh:NodeShape",
"label": "schema.org periodical shape definition.",
"targetClass": "schema:Periodical",
"nodekind": "sh:BlankNodeOrIRI",
"and": [
{
"node": "{{base}}/templates/core/entity/v0.1.0/shapes/EntityShape"
},
{
"property": [
{
"path": "schema:issn",
"name": "ISSN",
"description": "The International Standard Serial Number (ISSN) that identifies this serial publication",
"datatype": "xsd:string"
},
{
"path": "schema:publisher",
"name": "publisher",
"description": "The publisher of the periodical.",
"or": [
{
"class": "schema:Person",
"node": "{{base}}/schemas/nexus/schemaorg/person/v0.1.0/shapes/PersonShape"
},
{
"class": "schema:Organization",
"node": "{{base}}/schemas/nexus/schemaorg/organization/v0.1.0/shapes/OrganizationShape"
}
],
"maxCount": 1
},
{
"path": "schema:description",
"name": "description",
"description": "A description of the periodical.",
"datatype": "xsd:string",
"maxCount": 1
},
{
"path": "schema:name",
"name": "title",
"description": "The title of the periodical.",
"datatype": "xsd:string",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:alternateName",
"name": "shortTitle",
"description": "An abbreviated form of the title of the periodical.",
"datatype": "xsd:string",
"maxCount": 1
},
{
"path": "schema:url",
"name": "url",
"description": "URL at which the list of volumes of the periodical can be obtained.",
"nodeKind": "sh:IRI"
}
]
}
]
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"@context": [
"{{base}}/contexts/nexus/core/schema/v0.2.0",
{
"this": "{{base}}/schemas/neurosciencegraph/literature/publicationvolume/v0.1.0/shapes/"
}
],
"@type": "nxv:Schema",
"shapes": [
{
"@id": "this:PublicationVolumeShape",
"@type": "sh:NodeShape",
"label": "schema.org publication volume shape definition.",
"targetClass": "schema:PublicationVolume",
"nodekind": "sh:BlankNodeOrIRI",
"and": [
{
"node": "{{base}}/templates/core/entity/v0.1.0/shapes/EntityShape"
},
{
"property": [
{
"path": "schema:volumeNumber",
"name": "volumeNumber",
"description": "Identifies the volume of publication or multi-part work; for example, 'iii' or '2'",
"or": [
{"datatype": "xsd:string"},
{"datatype": "xsd:integer"}
]
},
{
"path": "schema:isPartOf",
"name": "periodical",
"description": "The periodical of which this is a volume.",
"class": "schema:Periodical",
"node": "{{base}}/schemas/neurosciencegraph/literature/periodical/v0.1.0/shapes/PeriodicalShape",
"minCount": 1,
"maxCount": 1
},
{
"path": "schema:url",
"name": "url",
"description": "URL at which the list of issues or table of contents of the publication volume can be obtained.",
"nodeKind": "sh:IRI"
}
]
}
]
}
]
}
Loading