@prefix schema:    <http://schema.org/> .
@prefix cc:        <http://creativecommons.org/ns#> .
@prefix xsd:       <http://www.w3.org/2001/XMLSchema#> .
@prefix opllic:    <http://www.openlinksw.com/ontology/licenses#> .
@prefix oplsof:    <http://www.openlinksw.com/ontology/software#> .
@prefix oplpro:    <http://www.openlinksw.com/ontology/products#> .
@prefix oplofr:    <http://www.openlinksw.com/ontology/offers#> .
@prefix gr:        <http://purl.org/goodrelations/v1#> .
@prefix skos:      <http://www.w3.org/2004/02/skos/core#> .
@prefix wdrs:      <http://www.w3.org/2007/05/powder-s#> .
@prefix source:    <http://virtuoso.openlinksw.com/data/turtle/OPALOffers-Licenses-Prices-URIBurner-API.ttl> .

# --- Document Metadata ---
source: a schema:CreativeWork ;
    schema:name "OPAL Chat API Offers, License and Price Definitions" ;
    schema:comment "This document describes sample offers for an OPAL Chat API Service, referencing predefined OPAL restrictions." ;
    schema:author <http://www.openlinksw.com/#this> ; # Placeholder
    cc:attributionName "OpenLink Software Example" ;
    schema:datePublished "2026-02-13T00:00:00Z"^^xsd:dateTime ;
    schema:dateModified "2026-06-01T00:00:00Z"^^xsd:dateTime .

# --- Link provider to offers ---
<http://www.openlinksw.com/dataspace/organization/openlink#this> schema:offers
    <http://data.openlinksw.com/oplweb/offer/ApiAccessEntryLevelOfferub-server#this> ,
    <http://data.openlinksw.com/oplweb/offer/ApiAccessMediumLevelOfferub-server#this> ,
    <http://data.openlinksw.com/oplweb/offer/ApiAccessAdvancedLevelOfferub-server#this> ,
    <http://data.openlinksw.com/oplweb/offer/ApiAccessMaxOfferub-server#this> .

# ==============================================================================

# 1. OFFERS

# ==============================================================================

# --- Entry Level Offer (BYOK) ---

<http://data.openlinksw.com/oplweb/offer/ApiAccessEntryLevelOfferub-server#this>
    a schema:Offer, oplofr:SubscriptionOffer, oplofr:ApiAccessEntryLevelOffer ;
    oplofr:offerNumber "OPAL-API-ENTRY-ODSQA-001"^^xsd:string ;
    skos:prefLabel "OPAL API Access on Uriburner - Entry Level (BYOK)" ;
    schema:comment "This offer allows entry level access to the OPAL API using your own key." ;
    schema:name "OPAL API Access - Entry Level (BYOK)" ;
    schema:description "Entry level API access on Uriburner. Features: SQL Script, SPASQL, Remote SPARQL, GraphQL. Free demo Assistant usage allowed." ;
    oplofr:isMemberOf <http://data.openlinksw.com/oplweb/OfferGroupApiAccess#this> ;
    schema:itemOffered <http://data.openlinksw.com/oplweb/license/ApiAccessEntryLevelLicenseub-server#this> ;
    schema:priceSpecification <http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessEntryLevelPriceSpecification#this> ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    skos:related [oplpro:hasFamily    <http://data.openlinksw.com/oplweb/product_family/opal#this> ] ;
    schema:potentialAction <https://shop.openlinksw.com/cart.vsp?command=add&item=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Foffer%2FApiAccessEntryLevelOfferub-server%23this> ;
    schema:url <https://linkeddata.uriburner.com/chat/api> .

# --- Medium Level Offer (BYOK) ---

<http://data.openlinksw.com/oplweb/offer/ApiAccessMediumLevelOfferub-server#this>
    a schema:Offer, oplofr:SubscriptionOffer, oplofr:ApiAccessMediumLevelOffer ;
    oplofr:offerNumber "OPAL-API-MEDIUM-ODSQA-001"^^xsd:string ;
    skos:prefLabel "OPAL API Access on Uriburner - Medium Level (BYOK)" ;
    schema:comment "This offer allows medium level access to the OPAL API using your own key." ;
    schema:name "OPAL API Access - Medium Level (BYOK)" ;
    schema:description "Medium level API access on Uriburner. Adds RDF Sponge, Facet Search, Web Fetch." ;
    oplofr:isMemberOf <http://data.openlinksw.com/oplweb/OfferGroupApiAccess#this> ;
    schema:itemOffered <http://data.openlinksw.com/oplweb/license/ApiAccessMediumLevelLicenseub-server#this> ;
    schema:priceSpecification <http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessMediumLevelPriceSpecification#this> ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    skos:related [oplpro:hasFamily    <http://data.openlinksw.com/oplweb/product_family/opal#this> ] ;
    schema:potentialAction <https://shop.openlinksw.com/cart.vsp?command=add&item=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Foffer%2FApiAccessMediumLevelOfferub-server%23this> ;
    schema:url <https://linkeddata.uriburner.com/chat/api> .

# --- Advanced Level Offer (BYOK) ---

<http://data.openlinksw.com/oplweb/offer/ApiAccessAdvancedLevelOfferub-server#this>
    a schema:Offer, oplofr:SubscriptionOffer, oplofr:ApiAccessAdvancedLevelOffer ;
    oplofr:offerNumber "OPAL-API-ADVANCED-ODSQA-001"^^xsd:string ;
    skos:prefLabel "OPAL API Access on Uriburner - Advanced (BYOK)" ;
    schema:comment "This offer allows advanced level access to the OPAL API using your own key." ;
    schema:name "OPAL API Access - Advanced (BYOK)" ;
    schema:description "Advanced level API access on Uriburner. Adds use of available Agent Configs." ;
    oplofr:isMemberOf <http://data.openlinksw.com/oplweb/OfferGroupApiAccess#this> ;
    schema:itemOffered <http://data.openlinksw.com/oplweb/license/ApiAccessAdvancedLevelLicenseub-server#this> ;
    schema:priceSpecification <http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessAdvancedLevelPriceSpecification#this> ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    skos:related [oplpro:hasFamily    <http://data.openlinksw.com/oplweb/product_family/opal#this> ] ;
    schema:potentialAction <https://shop.openlinksw.com/cart.vsp?command=add&item=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Foffer%2FApiAccessAdvancedLevelOfferub-server%23this> ;
    schema:url <https://linkeddata.uriburner.com/chat/api> .

# --- Max Offer (System-Wide) ---

<http://data.openlinksw.com/oplweb/offer/ApiAccessMaxOfferub-server#this>
    a schema:Offer, oplofr:SubscriptionOffer, oplofr:ApiAccessMaxOffer ;
    oplofr:offerNumber "OPAL-API-MAX-ODSQA-001"^^xsd:string ;
    skos:prefLabel "OPAL API Access on Uriburner - Max (System-Wide)" ;
    schema:comment "This offer allows max level access to the OPAL API using the system wide key." ;
    schema:name "OPAL API Access - Max (System-Wide)" ;
    schema:description "Max level API access using System-Wide keys on Uriburner. Includes all features, Assistants, Agent Configs, and System integrations." ;
    oplofr:isMemberOf <http://data.openlinksw.com/oplweb/OfferGroupApiAccess#this> ;
    schema:itemOffered <http://data.openlinksw.com/oplweb/license/ApiAccessMaxLicenseub-server#this> ;
    schema:priceSpecification <http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessMaxPriceSpecification#this> ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    skos:related [oplpro:hasFamily    <http://data.openlinksw.com/oplweb/product_family/opal#this> ] ;
    schema:potentialAction <https://shop.openlinksw.com/cart.vsp?command=add&item=http%3A%2F%2Fdata.openlinksw.com%2Foplweb%2Foffer%2FApiAccessMaxOfferub-server%23this> ;
    schema:url <https://linkeddata.uriburner.com/chat/api> .

# ==============================================================================

# 2. LICENSES

# ==============================================================================

<http://data.openlinksw.com/oplweb/license/ApiAccessEntryLevelLicenseub-server#this>
    a opllic:ProductLicense, opllic:ExpiringLicense, schema:Product, opllic:ACLOnly ;
    skos:altLabel "OPAL API Access Entry Level License" ;
    schema:name "OPAL API Access Entry Level License" ;
    schema:description "License for Entry Level API access via /chat/api using BYOK." ;
    opllic:productLicenseOf <http://data.openlinksw.com/oplweb/URIBurnerOPAL-API#this> ;
    opllic:partOf <http://data.openlinksw.com/oplweb/offer/ApiAccessEntryLevelOfferub-server#this> ;
    oplsof:hasOperatingSystemFamily   oplsof:OSFamilyAny ;
    oplsof:hasDatabaseFamily oplsof:WorldWideWeb ;
    schema:image <https://www.openlinksw.com/DAV/oplweb3/images/opal-license.png> ;
    opllic:hasDuration <http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription> ;
    # Credentials obtained via OAuth
    skos:related <https://linkeddata.uriburner.com/oauth/applications.vsp> .

<http://data.openlinksw.com/oplweb/license/ApiAccessMediumLevelLicenseub-server#this>
    a opllic:ProductLicense, opllic:ExpiringLicense, schema:Product, opllic:ACLOnly, opllic:SubscriptionLicense ;
    skos:altLabel "OPAL API Access Medium Level License" ;
    schema:name "OPAL API Access Medium Level License" ;
    schema:description "License for Medium Level API access via /chat/api using BYOK." ;
    opllic:productLicenseOf <http://data.openlinksw.com/oplweb/URIBurnerOPAL-API#this> ;
    opllic:partOf <http://data.openlinksw.com/oplweb/offer/ApiAccessMediumLevelOfferub-server#this> ;
    oplsof:hasOperatingSystemFamily   oplsof:OSFamilyAny ;
    oplsof:hasDatabaseFamily oplsof:WorldWideWeb ;
    schema:image <https://www.openlinksw.com/DAV/oplweb3/images/opal-license.png> ;
    opllic:hasDuration <http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription> ;
    skos:related <https://linkeddata.uriburner.com/oauth/applications.vsp> .

<http://data.openlinksw.com/oplweb/license/ApiAccessAdvancedLevelLicenseub-server#this>
    a opllic:ProductLicense, opllic:ExpiringLicense, schema:Product, opllic:ACLOnly, opllic:SubscriptionLicense ;
    skos:altLabel "OPAL API Access Advanced License" ;
    schema:name "OPAL API Access Advanced License" ;
    schema:description "License for Advanced Level API access via /chat/api using BYOK." ;
    opllic:productLicenseOf <http://data.openlinksw.com/oplweb/URIBurnerOPAL-API#this> ;
    opllic:partOf <http://data.openlinksw.com/oplweb/offer/ApiAccessAdvancedLevelOfferub-server#this> ;
    oplsof:hasOperatingSystemFamily   oplsof:OSFamilyAny ;
    oplsof:hasDatabaseFamily oplsof:WorldWideWeb ;
    schema:image <https://www.openlinksw.com/DAV/oplweb3/images/opal-license.png> ;
    opllic:hasDuration <http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription> ;
    skos:related <https://linkeddata.uriburner.com/oauth/applications.vsp> .

<http://data.openlinksw.com/oplweb/license/ApiAccessMaxLicenseub-server#this>
    a opllic:ProductLicense, opllic:ExpiringLicense, schema:Product, opllic:ACLOnly, opllic:SubscriptionLicense ;
    skos:altLabel "OPAL API Access Max License" ;
    schema:name "OPAL API Access Max License" ;
    schema:description "License for Max Level API access via /chat/api using System-Wide keys." ;
    opllic:productLicenseOf <http://data.openlinksw.com/oplweb/URIBurnerOPAL-API#this> ;
    opllic:partOf <http://data.openlinksw.com/oplweb/offer/ApiAccessMaxOfferub-server#this> ;
    oplsof:hasOperatingSystemFamily   oplsof:OSFamilyAny ;
    oplsof:hasDatabaseFamily oplsof:WorldWideWeb ;
    schema:image <https://www.openlinksw.com/DAV/oplweb3/images/opal-license.png> ;
    opllic:hasDuration <http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription> ;
    skos:related <https://linkeddata.uriburner.com/oauth/applications.vsp> .

# ==============================================================================

# 3. PRICE SPECIFICATIONS

# ==============================================================================

<http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessEntryLevelPriceSpecification#this>
    a schema:UnitPriceSpecification, oplofr:RetailUnitPriceSpecification ;
    schema:priceCurrency "USD"^^xsd:string ;
    schema:price "0.00"^^xsd:decimal ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    skos:prefLabel "API Access Entry Level (Free)" .

<http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessMediumLevelPriceSpecification#this>
    a schema:UnitPriceSpecification, oplofr:RetailUnitPriceSpecification, oplofr:SubscriptionPriceSpecification ;
    schema:priceCurrency "USD"^^xsd:string ;
    schema:price "9.99"^^xsd:decimal ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    oplofr:interval "month"^^xsd:string ;
    oplofr:intervalCount "1"^^xsd:integer ;
    skos:prefLabel "API Access Medium Level" .

<http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessAdvancedLevelPriceSpecification#this>
    a schema:UnitPriceSpecification, oplofr:RetailUnitPriceSpecification, oplofr:SubscriptionPriceSpecification ;
    schema:priceCurrency "USD"^^xsd:string ;
    schema:price "19.99"^^xsd:decimal ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    oplofr:interval "month"^^xsd:string ;
    oplofr:intervalCount "1"^^xsd:integer ;
    skos:prefLabel "API Access Advanced" .

<http://data.openlinksw.com/oplweb/offer-unitprice/ApiAccessMaxPriceSpecification#this>
    a schema:UnitPriceSpecification, oplofr:RetailUnitPriceSpecification, oplofr:SubscriptionPriceSpecification ;
    schema:priceCurrency "USD"^^xsd:string ;
    schema:price "49.99"^^xsd:decimal ;
    schema:validFrom "2025-12-01T00:00:00Z"^^xsd:dateTime ;
    schema:validThrough "2026-05-31T23:59:59Z"^^xsd:dateTime ;
    oplofr:interval "month"^^xsd:string ;
    oplofr:intervalCount "1"^^xsd:integer ;
    skos:prefLabel "API Access Max (System-Wide)" .

# ==============================================================================

# 4. Licensed Product i.e., API Access Description

# ==============================================================================

<http://data.openlinksw.com/oplweb/URIBurnerOPAL-API#this> a schema:WebAPI ;
    schema:name "OPAL Chat API via Uriburner" ;
    schema:description "API endpoint for interacting with OPAL on URIBurner, enabling programmatic Machine-Centric Programming (MCP) chat sessions." ;
    schema:serviceType "MCP-compliant AI Chat Agent API"@en ;
    schema:url <https://linkeddata.uriburner.com/chat/api> ;
    skos:related <http://data.openlinksw.com/oplweb/URIBurnerOPAL#this> ;
    schema:provider [
        a schema:Organization ;
        schema:name "OpenLink Software" ;
        schema:url <https://www.openlinksw.com/>
    ] ;
    schema:documentation <https://opal.openlinksw.com/install/> ;
    schema:exampleOfWork <https://www.openlinksw.com/data//html/opal-system-functions-or-agents-apis-developer-journey-gemini-17.html> ;
    schema:hasPart [
        a schema:EntryPoint ;
        schema:name "OPAL Chat Endpoint" ;
        schema:urlTemplate "https://linkeddata.uriburner.com/chat/api" ;
        schema:httpMethod "POST" ;
        schema:contentType "application/json" ;
        schema:actionPlatform <http://schema.org/OnlinePlatform>
    ],
    [
       a schema:WebAPI ;
       schema:serviceType "MCP Server (Streamable HTTP)"@en ;
       schema:url <https://linkeddata.uriburner.com/chat/mcp/messages>
    ] ;
    schema:potentialAction [
        a schema:CommunicateAction ;
        schema:name "SendMessage" ;
        schema:target [
            a schema:EntryPoint ;
            schema:urlTemplate "https://linkeddata.uriburner.com/chat/api" ;
            schema:httpMethod "POST"
        ] ;
        schema:expects [
            a schema:Text ;
            schema:description "JSON payload containing message content and metadata for OPAL"
        ] ;
        schema:result [
            a schema:Text ;
            schema:description "JSON response containing the OPAL chat reply or status"
        ]
    ] .
 
## License Duration for Licenses to be associated with offers in this doc

<http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription>
    opllic:isDurationOf <http://data.openlinksw.com/oplweb/license/ApiAccessEntryLevelLicenseub-server#this> ,
                       <http://data.openlinksw.com/oplweb/license/ApiAccessMediumLevelLicenseub-server#this> ,
                       <http://data.openlinksw.com/oplweb/license/ApiAccessAdvancedLevelLicenseub-server#this> ,
                       <http://data.openlinksw.com/oplweb/license/ApiAccessMaxLicenseub-server#this> .

<http://data.openlinksw.com/oplweb/license/License-Duration#ongoing-subscription> a opllic:Duration ; 
    schema:name "License Duration — Ongoing subscription" .

