diff --git a/README.md b/README.md index 21012eb..7861231 100644 --- a/README.md +++ b/README.md @@ -49,21 +49,34 @@ The operations cover read-write Linked Data, SPARQL queries, URI manipulation, a - `DESCRIBE` - `SELECT` - `Substitute` + - `SPARQLString` +- Schema + - `ExtractClasses` + - `ExtractDatatypeProperties` + - `ExtractObjectProperties` + - `ExtractOntology` - URI & String Operations - `ResolveURI` - `EncodeForURI` - `Concat` - `Replace` - `Str` + - `STRUUID` - `URI` - Control Flow & Variables - `Value` - `Variable` - `ForEach` + - `Filter` + - `Bindings` + - `Current` + - `Execute` + - `Merge` - LinkedDataHub-specific - `ldh-CreateContainer` - `ldh-CreateItem` - `ldh-List` + - `ldh-AddFile` - `ldh-AddGenericService` - `ldh-AddResultSetChart` - `ldh-AddSelect` @@ -71,6 +84,9 @@ The operations cover read-write Linked Data, SPARQL queries, URI manipulation, a - `ldh-AddObjectBlock` - `ldh-AddXHTMLBlock` - `ldh-RemoveBlock` + - `ldh-GeneratePortal` + - `ldh-GenerateClassContainers` + - `ldh-GenerateOntologyViews` ## Usage diff --git a/examples/generate-portal.json b/examples/generate-portal.json index 9c06346..2cfe628 100644 --- a/examples/generate-portal.json +++ b/examples/generate-portal.json @@ -1,5 +1,5 @@ { - "@op": "GeneratePortal", + "@op": "ldh-GeneratePortal", "args": { "endpoint": { "@op": "URI", diff --git a/pyproject.toml b/pyproject.toml index 7ea64ac..91b0b2e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "web-algebra" -version = "1.3.0" +version = "1.4.0" description = "Composable RDF operations in JSON" readme = "README.md" license = "Apache-2.0" diff --git a/src/web_algebra/operations/linkeddatahub/content/generate_class_containers.py b/src/web_algebra/operations/linkeddatahub/content/generate_class_containers.py index 23defde..948f7d2 100644 --- a/src/web_algebra/operations/linkeddatahub/content/generate_class_containers.py +++ b/src/web_algebra/operations/linkeddatahub/content/generate_class_containers.py @@ -20,6 +20,10 @@ class GenerateClassContainers(Operation): This operation orchestrates actual HTTP operations to set up the portal structure. """ + @classmethod + def name(cls): + return "ldh-GenerateClassContainers" + @classmethod def description(cls) -> str: return "Creates LinkedDataHub containers with instance list views for ontology classes" diff --git a/src/web_algebra/operations/linkeddatahub/content/generate_ontology_views.py b/src/web_algebra/operations/linkeddatahub/content/generate_ontology_views.py index 29a78e4..b3e2d27 100644 --- a/src/web_algebra/operations/linkeddatahub/content/generate_ontology_views.py +++ b/src/web_algebra/operations/linkeddatahub/content/generate_ontology_views.py @@ -15,6 +15,10 @@ class GenerateOntologyViews(Operation): owl:maxQualifiedCardinality restriction of 1. """ + @classmethod + def name(cls): + return "ldh-GenerateOntologyViews" + @classmethod def description(cls) -> str: return "Generates LinkedDataHub view templates and SPIN queries for non-functional properties" diff --git a/src/web_algebra/operations/linkeddatahub/content/generate_portal.py b/src/web_algebra/operations/linkeddatahub/content/generate_portal.py index 09a746a..36e2852 100644 --- a/src/web_algebra/operations/linkeddatahub/content/generate_portal.py +++ b/src/web_algebra/operations/linkeddatahub/content/generate_portal.py @@ -20,6 +20,10 @@ class GeneratePortal(Operation): 4. GenerateClassContainers - creates containers for each class with instance views """ + @classmethod + def name(cls): + return "ldh-GeneratePortal" + @classmethod def description(cls) -> str: return "Generates a complete LinkedDataHub portal with class containers and property views from a SPARQL endpoint" diff --git a/uv.lock b/uv.lock index 49bc26e..72cdf49 100644 --- a/uv.lock +++ b/uv.lock @@ -888,7 +888,7 @@ wheels = [ [[package]] name = "web-algebra" -version = "1.2.0" +version = "1.4.0" source = { editable = "." } dependencies = [ { name = "mcp", extra = ["cli"] },