Skip to main content

Hanami properties

To ease configuration, the Hanami ontology introduces some properties to configure the UI and how the data should be validated. These are listed below, grouped by their domain classes.

Properties on sh:Shape and subclasses

Data properties

propertydomaindatatypedescription
hanami:isRootsh:NodeShapexsd:booleanIndicates that the nodeshape should be used to create root nodes for the items in the collection.
hanami:readonlysh:PropertyShapexsd:booleanSet to true when a property should only be visible in the UI, but not be editable by the user. Default value is false

Object properties

propertydomainrangedescription
hanami:purposesh:Shapehanami:PurposeIndicates the purpose of a shape. Either hanami:ValidationPurpose to validate the shape, or hanami:EditionPurpose to show it in the UI. When omitted, both purposes are used.
hanami:viewersh:NodeShapehanami:ViewerIndicates which viewer should be used to view instances of the class the nodeshape targets. Consult the dedicated section on classes to see which kind of viewers are available and how they can be configured.
hanami:editorsh:PropertyShapehanami:EditorIndicates which editor should be used to edit the property. Consult the dedicated section on classes to see which kind of editors are available and how they can be configured.
hanami:listOfsh:PropertyShapesh:PropertyShapeIndicates that the values of the property should be a list of a certain type.
hanami:selectionsh:PropertyShaperdfs:Class(experimental) Must have value hanami:Item, indicating that the property can reference any item in Hanami.

Properties on hanami:Collection

Data properties

propertydomaindatatypedescription
hanami:baseUrihanami:Collectionxsd:stringIs used as baseUri when generating a URI for a newly created item
hanami:allowMultipleRootshanami:Collectionxsd:booleanIndicates if items in the collection can have multiple root nodes. Default is false

Object properties

propertydomainrangedescription
hanami:elasticsearchhanami:Collectionhanami:ElasticsearchIndicates which Elasticsearch connection should be used for indexing and faceted search
hanami:rdfStorehanami:Collectionhanami:RdfStoreIndicates where the data of this collection is stored.
hanami:shapeshanami:Collectionsh:NodeShapeIndicates which nodeshapes should be used to render the form for items in this collection
hanami:workspacehanami:Collectionhanami:WorkspaceIndicates in which workspace the collection is located

Properties on hanami:Viewer, hanami:Editor and subclasses

Data properties

propertydomaindatatypedescription
hanami:templatehanami:TemplateViewerxsd:stringA string providing a template to render nodes in the UI

Object properties

propertydomainrangedescription
hanami:linkingStrategyhanami:NodeEditorhanami:LinkingStrategySpecifies where the nodes referenced by an object property are located. To create a new internal node from the property, use hanami:CreateLinkingStrategy or hanami:CreateManualLinkingStrategy (the latter allows the user to specify the URI of the new node). To only allow the user to reference an already existing node, use hanami:InternalReferenceLinkingStrategy or hanami:ExternalReferenceLinkingStrategy, depending on whether or not the node is present in the current item
hanami:optionhanami:SelectEditorrdfs:ResourceDefine an exhaustive set of options presented to the user when using a SelectEditor

Properties for connections

Datatype properties

propertydomaindatatypedescription
hanami:connectionStringhanami:RdfStoreConnectionVirtuosoxsd:stringSpecifies the SPARQL endpoint of the Virtuoso instance

Object properties

propertydomainrangedescription
hanami:rdfStoreConnectionhanami:RdfStorehanami:RdfStoreConnectionVirtuosoReferences the connection object of the rdf store.
hanami:elasticsearchConnectionhanami:Elasticsearchhanami:ElasticsearchConnectionBeanReferences the connection object of the elasticsearch instance