@ulb-darmstadt/shacl-form
Version:
SHACL form generator
46 lines (45 loc) • 1.74 kB
TypeScript
import { Literal, NamedNode, Quad } from 'n3';
import { Term } from '@rdfjs/types';
import { Config } from './config';
import { ShaclNodeTemplate } from './node-template';
export declare class ShaclPropertyTemplate {
label: string;
name: Literal | undefined;
description: Literal | undefined;
path: string | undefined;
node: NamedNode | undefined;
group: string | undefined;
class: NamedNode | undefined;
minCount: number | undefined;
maxCount: number | undefined;
minLength: number | undefined;
maxLength: number | undefined;
minInclusive: number | undefined;
maxInclusive: number | undefined;
minExclusive: number | undefined;
maxExclusive: number | undefined;
singleLine: boolean | undefined;
readonly: boolean | undefined;
cssClass: string | undefined;
defaultValue: Term | undefined;
pattern: string | undefined;
order: number | undefined;
nodeKind: NamedNode | undefined;
and: string | undefined;
in: string | undefined;
or: Term[] | undefined;
xone: Term[] | undefined;
languageIn: Term[] | undefined;
datatype: NamedNode | undefined;
hasValue: Term | undefined;
qualifiedValueShape: ShaclNodeTemplate | undefined;
nodeShapes: Set<ShaclNodeTemplate>;
owlImports: Set<NamedNode>;
id: Term;
parent: ShaclNodeTemplate;
config: Config;
constructor(id: Term, parent: ShaclNodeTemplate);
}
export declare function cloneProperty(template: ShaclPropertyTemplate): ShaclPropertyTemplate;
export declare function mergeQuads(template: ShaclPropertyTemplate, quads: Quad[]): ShaclPropertyTemplate;
export declare function mergeProperty(target: ShaclPropertyTemplate, source: ShaclPropertyTemplate): void;