diff --git a/shacl12-ui/index.html b/shacl12-ui/index.html index 9260104f..ecfd00dc 100644 --- a/shacl12-ui/index.html +++ b/shacl12-ui/index.html @@ -433,6 +433,12 @@

Terminology

>value node + , + + SHACL Global Configuration + .

@@ -443,6 +449,14 @@

Terminology

value for display.
+
+
Label Property Resolution
+
+ Label Property Resolution is the process of determining and ordering the + label property IRIs for label resolution, prioritizing the preferred or most relevant property + IRI for retrieval. It generates a default IRI when no suitable value exists. +
+
Label Resolution
@@ -450,7 +464,7 @@

Terminology

display label for an RDF resource, or generating a fallback value when no suitable value exists. It applies to both value nodes and properties identified by sh:path, the latter of which is commonly used to label form elements. - The process includes language resolution and considers labeling-related annotations from the + The process includes label property resolution and language resolution, and considers labeling-related annotations from the shapes graph, data graph, application environment, and user preferences, to determine the best label for UI presentation.
@@ -671,6 +685,68 @@

Property UI Component

+
+

SHACL Global Configuration

+

+ A shapes graph may contain a SHACL instance of the class shui:Configuration + to define global configuration properties for rendering the UI. + sh:Graph is a SHACL subclass of shui:Configuration. + The following properties can be defined for a shui:Configuration instance. +

Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + +
PropertySummary and Syntax Rules
shui:defaultNamespace + The default namespace used to construct fresh user-added nodes. + The value of shui:defaultNamespace is a Literal whose value is a valid IRI. +
shui:languagePreference + The language selection for displaying labels in widgets. + The value of shui:languagePreference is a well-formed SHACL list where all members are language tags. + The preferred language is determined according to the order of priority in the list from beginning (highest) to end (lowest ). + An empty literal (`""`) represents no language, i.e., a string literal with no language tag. +
shui:timeZone + The time zone used to construct new terms with datatype xsd:dateTime. + The value of shui:timeZone is of datatype xsd:string. +
shui:labelPreference + The label properties used to determine the labels to display in widgets and labels to represent nodes values in the widgets. + The value of shui:labelPreference is a well-formed SHACL list where all members are IRIs. + The preferred label property is determined according to the order of priority in the list from beginning (highest) to end (lowest). +
+
+

TODO: Describe the constraint collection/aggregation behaviour here for both Node and Property UI Component.

@@ -1376,7 +1452,7 @@

Language Resolution

expressed is up to the implementation. Possible approaches include but are not limited to:
  • @@ -1454,6 +1530,14 @@

    Label Resolution

  • +
    +

    Label Property Resolution

    +

    + Label property resolution (i.e., determining the label properties for retrieving label values) is done according to the preferred property IRIs listed in the global configuration property shui:labelPreference. + Preferred labels default to sh:name for Property Labels and rdfs:label for Value Node Labels. +

    +
    +

    Property Labels

    @@ -1465,25 +1549,24 @@

    Property Labels

    1. If the property shape has one or more values for the configured property path for - the property label resolution (defaulting to sh:name), select the best - matching value using language resolution. If a match is found, use that literal - as the label. + properties determined by label property resolution, select the best + matching value using language resolution. + If a match is found, use that literal as the label.
    2. If P is a predicate IRI and the data graph - contains one or more rdfs:label triples with subject P, select - the best matching value using language resolution. If a match is found, use - that literal as the label. + contains one or more triples with properties determined by label property resolution and with subject P, select + the best matching value using language resolution. + If a match is found, use that literal as the label.
    3. If P is a predicate IRI and the shapes graph - contains one or more rdfs:label triples with subject P, select - the best matching value using language resolution. If a match is found, use - that literal as the label. + contains one or more triples with properties determined by label property resolution and with subject P, select + the best matching value using language resolution. + If a match is found, use that literal as the label.
    4. - If P is a predicate IRI, use the - local name resolution of P as the label. + If P is a predicate IRI, use the local name resolution of P as the label.
    5. Otherwise, an implementation-specific translation algorithm should be applied to convert the complex property path @@ -1508,19 +1591,20 @@

      Value Node Labels

      whose sh:path is annotated with shui:propertyRole shui:LabelRole, retrieve the values of that path from the data graph for subject V. Select the best matching value using - language resolution. If a match is found, use that literal as the label. + language resolution. + If a match is found, use that literal as the label.
    6. If the data graph contains one or more values for the configured property path for - the value node label resolution (defaulting to rdfs:label) for V, - select the best matching value using language resolution. If a match is found, use - that literal as the label. + the value node determined by label property resolution for V, + select the best matching value using language resolution. + If a match is found, use that literal as the label.
    7. If the shapes graph contains one or more values for the configured property path for - the value node label resolution (defaulting to rdfs:label) for V, - select the best matching value using language resolution. If a match is found, use - that literal as the label. + the value node determined by label property resolution for V, + select the best matching value using language resolution. + If a match is found, use that literal as the label.
    8. If V is an IRI, use the