diff --git a/.gitignore b/.gitignore index ea8c4bf7f35f6f77f75d92ad8ce8349f6e81ddba..e3dae90182dcf25cc4985fb9678ea958e8baefc0 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /target +nbactions.xml diff --git a/pom.xml b/pom.xml index 30d540c32b371bec78f79b6ae21a2f5d079ac308..df5e3cbca4204675c34c0a809e430f22ecb7fb90 100644 --- a/pom.xml +++ b/pom.xml @@ -15,7 +15,7 @@ UTF-8 3.4.0 ${project.build.directory}/endorsed - 9.4.17.v20190418 + 9.4.14.v20181114 2.28 2.0-SNAPSHOT false @@ -29,31 +29,33 @@ ${jena.version} pom - + + org.apache.jena + jena-text + ${jena.version} + + org.slf4j slf4j-log4j12 1.7.25 + + + - javax.ws.rs - javax.ws.rs-api - 2.1 - provided + org.eclipse.jetty + jetty-annotations + ${jetty.version} - javax.servlet - javax.servlet-api - 3.1.0 - provided + org.eclipse.jetty + jetty-servlets + ${jetty.version} org.glassfish.jersey.containers - jersey-container-jetty-servlet + jersey-container-servlet-core ${jersey.version} @@ -72,75 +74,8 @@ jersey-hk2 ${jersey.version} - - org.eclipse.jetty - jetty-servlets - 9.4.14.v20181114 - - - - org.apache.jena - jena-text - ${jena.version} - - - org.apache.jena - jena-arq - ${jena.version} - - + - - ROOT - - - org.apache.maven.plugins - maven-deploy-plugin - 2.7 - - true - - - - org.eclipse.jetty - jetty-maven-plugin - 9.4.14.v20181114 - - 1 - - - - 80 - - - - - src/main/webapp - - / - - - - - org.eclipse.jetty - jetty-servlets - 9.4.14.v20181114 - - - org.slf4j - slf4j-log4j12 - 1.7.25 - - - com.google.code.gson - gson - 2.8.2 - jar - - - - - diff --git a/src/main/java/org/etsi/saref/server/SAREFServer.java b/src/main/java/org/etsi/saref/server/SAREFServer.java index 4af895793aaa9fb0ada91b8dfaee26fde2f267ce..da19880fc894c2b6fb876581a8a47b4874263212 100644 --- a/src/main/java/org/etsi/saref/server/SAREFServer.java +++ b/src/main/java/org/etsi/saref/server/SAREFServer.java @@ -15,18 +15,29 @@ */ package org.etsi.saref.server; +import com.github.mustachejava.DefaultMustacheFactory; +import com.github.mustachejava.MustacheFactory; +import com.github.mustachejava.MustacheResolver; +import com.github.mustachejava.resolver.DefaultResolver; import java.util.HashMap; import org.etsi.saref.server.entities.MediaTypeExt; import java.util.List; import java.util.Map; -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Variant; import org.apache.jena.shared.PrefixMapping; import org.apache.jena.shared.impl.PrefixMappingImpl; import org.apache.jena.sparql.expr.NodeValue; +import org.eclipse.jetty.server.Handler; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.ErrorHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.server.handler.ResourceHandler; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; import org.glassfish.jersey.server.ResourceConfig; import org.glassfish.jersey.server.mvc.mustache.MustacheMvcFeature; +import org.glassfish.jersey.servlet.ServletContainer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,8 +45,7 @@ import org.slf4j.LoggerFactory; * * @author Maxime Lefrançois */ -@ApplicationPath("/") -public class SAREFServer extends ResourceConfig { +public class SAREFServer{ public static final String NS = "https://saref.etsi.org/"; public static final String DS = "http://localhost:3030/ds/"; @@ -48,6 +58,7 @@ public class SAREFServer extends ResourceConfig { public static final MediaTypeExt TEXT_TURTLE = new MediaTypeExt("text", "turtle", "ttl", "TTL", true); public static final MediaTypeExt APPLICATION_NTRIPLE = new MediaTypeExt("application", "n-triples", "nt", "N-TRIPLE", true); public static final MediaTypeExt APPLICATION_N3 = new MediaTypeExt("application", "n3", "n3", "N3", true); + public static final MediaTypeExt APPLICATION_JSONLD = new MediaTypeExt("application", "ld+json", "jsonld", "JSON-LD", true); public static final MediaTypeExt APPLICATION_XHTMLXML = new MediaTypeExt("application", "xhtml+xml", "html", null, false); public static final List VARIANTS = Variant.mediaTypes( @@ -56,6 +67,7 @@ public class SAREFServer extends ResourceConfig { TEXT_TURTLE, APPLICATION_NTRIPLE, APPLICATION_N3, + APPLICATION_JSONLD, APPLICATION_XHTMLXML).build(); public static final Map EXTENSIONS; @@ -83,12 +95,46 @@ public class SAREFServer extends ResourceConfig { PM.setNsPrefix("saref", "https://saref.etsi.org/core/"); } - public SAREFServer() { - LOG.info("Starting Jersey app..."); - property(MustacheMvcFeature.TEMPLATE_BASE_PATH, "/templates"); - register(MustacheMvcFeature.class); - packages("org.etsi.saref.server.resources"); + public static void main(String[] args) { NodeValue.VerboseExceptions = true; NodeValue.VerboseWarnings = false; + + ResourceConfig resourceConfig = new ResourceConfig(); + resourceConfig.property(MustacheMvcFeature.TEMPLATE_BASE_PATH, "/templates"); + MustacheResolver resolver = new DefaultResolver("."); + MustacheFactory factory = new DefaultMustacheFactory(resolver); + resourceConfig.property(MustacheMvcFeature.TEMPLATE_OBJECT_FACTORY, factory); + resourceConfig.register(MustacheMvcFeature.class); + resourceConfig.packages("org.etsi.saref.server.resources"); + ServletHolder servletHolder = new ServletHolder(new ServletContainer(resourceConfig)); + + ServletContextHandler contextHandler = new ServletContextHandler(); + contextHandler.addServlet(servletHolder, "/*"); + + ResourceHandler resourceHandler = new ResourceHandler(); + resourceHandler.setDirectoriesListed(true); + resourceHandler.setResourceBase("src/main/webapp"); + + HandlerList handlers = new HandlerList(); + handlers.setHandlers(new Handler[]{ + resourceHandler, + contextHandler, + new ErrorHandler(), + new DefaultHandler()}); + + Server server = new Server(8080); + server.setHandler(handlers); + + try { + server.start(); + server.join(); + } catch (Exception ex) { + try { + server.stop(); + } catch (Exception e) { + System.exit(-1); + } + } } + } diff --git a/src/main/java/org/etsi/saref/server/entities/HomePageFilter.java b/src/main/java/org/etsi/saref/server/entities/HomePageFilter.java new file mode 100644 index 0000000000000000000000000000000000000000..b9d1620cd120e8fc9b454dd79715da0ba9b0f4d7 --- /dev/null +++ b/src/main/java/org/etsi/saref/server/entities/HomePageFilter.java @@ -0,0 +1,43 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.etsi.saref.server.entities; + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; + +/** + * + * @author maxime.lefrancois + */ +@WebFilter(urlPatterns = {""}) +public class HomePageFilter implements Filter { + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) + throws IOException, ServletException { + HttpServletRequest req = ((HttpServletRequest) request); + String contextPath = req.getContextPath() + "/"; + req.getRequestDispatcher(contextPath+"index.html"); + chain.doFilter(request, response); + } + + @Override + public void destroy() { + + } + + @Override + public void init(javax.servlet.FilterConfig filterConfig) throws ServletException { + System.out.println("hello servlet !!!"); + } + +} diff --git a/src/main/java/org/etsi/saref/server/resources/Bean.java b/src/main/java/org/etsi/saref/server/resources/Bean.java deleted file mode 100644 index aeb388736463ceaace8ade6ff5bd0bc649d21354..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/saref/server/resources/Bean.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -package org.etsi.saref.server.resources; - -/** - * - * @author maxime.lefrancois - */ -public class Bean { - - String name = "sldkgb"; -} diff --git a/src/main/java/org/etsi/saref/server/resources/CoreFilter.java b/src/main/java/org/etsi/saref/server/resources/CoreFilter.java deleted file mode 100644 index 598cbf71e2ac080210b5e0a1615f56afa5424d1f..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/saref/server/resources/CoreFilter.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -package org.etsi.saref.server.resources; - -import java.io.IOException; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.annotation.WebFilter; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import org.apache.jena.query.QueryExecution; -import org.apache.jena.query.QueryExecutionFactory; -import org.apache.jena.query.QueryFactory; -import org.apache.jena.query.ReadWrite; -import org.apache.jena.rdf.model.Model; -import org.apache.jena.rdfconnection.RDFConnection; -import org.apache.jena.rdfconnection.RDFConnectionFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Redirect: - * - * @author maxime.lefrancois - */ -@WebFilter(urlPatterns = {"/core*"}) -public class CoreFilter implements Filter { - - static final String NS = "https://saref.etsi.org/"; - private static final String DS = "http://localhost:3030/ds/"; - private static final Logger LOG = LoggerFactory.getLogger(CoreFilter.class); - private static final String CONFIG = "http://example.org/" + "config"; - - @Override - public void init(FilterConfig filterConfig) throws ServletException { - LOG.info("starting..."); - } - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { -// HttpServletRequest req = ((HttpServletRequest) request); -// String contextPath = req.getContextPath() + "/"; -// String requestURI = req.getRequestURI(); -// String resourcePath = requestURI.substring(contextPath.length()); -// System.out.println("ResourcePath is " + resourcePath); -// String redirection = null; -// -// if (resourcePath.equals("core")) { -// -// // find latest version of core. -// try (RDFConnection conn = RDFConnectionFactory.connect(DS)) { -// try (QueryExecution exec = conn.query("PREFIX ex: \n" -// + "PREFIX rdfs: \n" -// + "SELECT ?v\n" -// + "FROM \n" -// + "WHERE {\n" -// + " \n" -// + " ex:hasVersion ?v .\n" -// + " FILTER NOT EXISTS {\n" -// + " ?v2 ex:priorVersion ?v .\n" -// + " }\n" -// + "}")) { -// String uri = exec.execSelect().next().getResource("v").getURI(); -// redirection = uri.substring(NS.length()); -// -// } -// } -// } -// -// if (redirection != null) { -// HttpServletResponse res = (HttpServletResponse) response; -// res.setHeader("Location", redirection); -// res.setStatus(HttpServletResponse.SC_SEE_OTHER); -// res.flushBuffer(); -// return; -// } - chain.doFilter(request, response); - } - - @Override - public void destroy() { - } -} diff --git a/src/main/java/org/etsi/saref/server/resources/Index.java b/src/main/java/org/etsi/saref/server/resources/Index.java new file mode 100644 index 0000000000000000000000000000000000000000..b856757a0c23e3b48576368df4080299acd7d62b --- /dev/null +++ b/src/main/java/org/etsi/saref/server/resources/Index.java @@ -0,0 +1,27 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.etsi.saref.server.resources; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; +import org.glassfish.jersey.server.mvc.Template; + +/** + * + * @author maxime.lefrancois + */ +@Path("/{home: /?|index\\.html}") +public class Index { + + @GET + @Produces(MediaType.TEXT_HTML) + @Template(name = "/index") + public String getHome() { + return ""; + } +} diff --git a/src/main/java/org/etsi/saref/server/resources/ListExercises.java b/src/main/java/org/etsi/saref/server/resources/ListExercises.java deleted file mode 100644 index 7fedfa144189ee1edbc48dcacdb60e7406645742..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/saref/server/resources/ListExercises.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright 2016 Ecole des Mines de Saint-Etienne. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.etsi.saref.server.resources; - -import com.github.mustachejava.DefaultMustacheFactory; -import com.github.mustachejava.Mustache; -import com.github.mustachejava.MustacheFactory; -import java.io.IOException; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import org.glassfish.jersey.server.mvc.Template; - - -@Path("/{p: (index\\.html)?}") -public class ListExercises { - - @GET - @Produces(MediaType.TEXT_HTML) - @Template(name = "/view") - public Map getView() throws IOException { - Map model = new HashMap(); - model.put("title", "OS"); - Set oses = new HashSet(); - OsInfo i = new OsInfo(); - i.name = "iOS"; - i.vendor = "Apple"; - i.version = 8; - oses.add(i); - i = new OsInfo(); - i.name = "Android"; - i.vendor = "Google"; - i.version = 5; - oses.add(i); - i = new OsInfo(); - i.name = "WindowsPhone"; - - StringWriter sw = new StringWriter(); - MustacheFactory mf = new DefaultMustacheFactory(); - Mustache mustache = mf.compile("templates/beans.mustache"); - mustache.execute(sw, new Bean()).flush(); - i.vendor = sw.toString(); - - i.version = 9; - oses.add(i); - model.put("os", oses); - - return model; - - } -} diff --git a/src/main/java/org/etsi/saref/server/resources/OntologyResource.java b/src/main/java/org/etsi/saref/server/resources/OntologyResource.java index eaa4802b22096a92efbbb4d7bbae3d7da187c2a0..45c5d291b3ed3187bc86e31010e1dcb6fcdd032f 100644 --- a/src/main/java/org/etsi/saref/server/resources/OntologyResource.java +++ b/src/main/java/org/etsi/saref/server/resources/OntologyResource.java @@ -33,7 +33,7 @@ import org.slf4j.LoggerFactory; @Path("/{onto: core|saref4[a-z][a-z][a-z][a-z]}") public class OntologyResource { - private static final Logger LOG = LoggerFactory.getLogger(CoreFilter.class); + private static final Logger LOG = LoggerFactory.getLogger(OntologyResource.class); private @PathParam("onto") String onto; diff --git a/src/main/java/org/etsi/saref/server/resources/OsInfo.java b/src/main/java/org/etsi/saref/server/resources/OsInfo.java deleted file mode 100644 index e4752376176031299a0869955f8c69690cfbbd6d..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/saref/server/resources/OsInfo.java +++ /dev/null @@ -1,19 +0,0 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -package org.etsi.saref.server.resources; - -import javax.xml.bind.annotation.XmlRootElement; - -/** - * - * @author maxime.lefrancois - */ -@XmlRootElement -public class OsInfo { - - public String name, vendor; - public Integer version; -} diff --git a/src/main/java/org/etsi/saref/server/resources/Resources.java b/src/main/java/org/etsi/saref/server/resources/Resources.java new file mode 100644 index 0000000000000000000000000000000000000000..2729be33701f64f8c9e9c3c4c09b9fa4c19ca35c --- /dev/null +++ b/src/main/java/org/etsi/saref/server/resources/Resources.java @@ -0,0 +1,27 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.etsi.saref.server.resources; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; +import org.glassfish.jersey.server.mvc.Template; + +/** + * + * @author maxime.lefrancois + */ +@Path("/resources.html") +public class Resources { + + @GET + @Produces(MediaType.TEXT_HTML) + @Template(name = "/resources") + public String getHome() { + return ""; + } +} diff --git a/src/main/java/org/etsi/saref/server/resources/Search.java b/src/main/java/org/etsi/saref/server/resources/Search.java index eaf379632dfb0071d24ed0fb180afe538501478d..19ffcf97ca0dc1e98897a1b10e6ae1a49be993dc 100644 --- a/src/main/java/org/etsi/saref/server/resources/Search.java +++ b/src/main/java/org/etsi/saref/server/resources/Search.java @@ -3,7 +3,6 @@ */ package org.etsi.saref.server.resources; -import java.io.IOException; import javax.ws.rs.GET; import javax.ws.rs.Path; @@ -18,11 +17,19 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.StringWriter; -import java.net.URI; import com.github.mustachejava.DefaultMustacheFactory; import com.github.mustachejava.Mustache; import com.github.mustachejava.MustacheFactory; +import java.util.HashMap; +import java.util.Map; +import org.apache.jena.rdf.model.Model; +import org.apache.jena.rdf.model.impl.LiteralImpl; +import org.apache.jena.rdfconnection.RDFConnection; +import org.apache.jena.rdfconnection.RDFConnectionFactory; +import org.apache.jena.sparql.expr.NodeValue; +import org.apache.jena.sparql.expr.nodevalue.NodeValueString; +import org.etsi.saref.server.SAREFServer; /** * @author Omar Qawasmeh @@ -32,46 +39,53 @@ import com.github.mustachejava.MustacheFactory; @Path("/search") public class Search { + + private static final String QUERY_COUNT = "PREFIX ex: \n" + + "PREFIX rdfs: \n" + + "PREFIX text: \n" + + "SELECT (COUNT(*) AS ?count)\n" + + "WHERE {\n" + + " ( ?s ?score ?literal ?g ) text:query %s .\n" + + " OPTIONAL { ?s rdfs:label ?label }\n" + + " OPTIONAL { ?s rdfs:comment ?comment }\n" + + "}"; + private static final String QUERY = "PREFIX ex: \n" + + "PREFIX rdfs: \n" + + "PREFIX text: \n" + + "SELECT DISTINCT *\n" + + "WHERE {\n" + + " ( ?s ?score ?literal ?g ) text:query %s .\n" + + " OPTIONAL { ?s rdfs:label ?label }\n" + + " OPTIONAL { ?s rdfs:comment ?comment }\n" + + "}\n" + + "ORDER BY DESC ( ?score )\n" + + "OFFSET %s\n" + + "LIMIT %s"; @GET @Produces(MediaType.TEXT_HTML) - @Template(name = "/index") - public String doSearch(@QueryParam("q") String keyword) throws IOException { - // String results; - - MustacheFactory mf = new DefaultMustacheFactory(); - - Mustache m = mf.compile("templates/index.mustache"); - - SearchKeyWord queryResults = new SearchKeyWord(); - // "has meter reading type" - queryResults.setSearchResultsLabels(keyword); - - // results=queryResults.getSearchResultsLabels(); - - System.out.println(queryResults.getSearchResultsLabels()); - - StringWriter writer = new StringWriter(); - - System.out.println("Before:" + writer.toString()); - - m.execute(writer, queryResults).flush(); - - writer.close(); - - System.out.println("After:" + writer); - - String html = writer.toString(); - FileWriter fw = new FileWriter("src/main/resources/saref-portal-generator/public/keywordSearchPage.html"); - StringWriter sw = new StringWriter(); - sw.write(html); - fw.write(sw.toString()); - - fw.close(); - File htmlFile = new File("src/main/resources/saref-portal-generator/public/keywordSearchPage.html"); - Desktop.getDesktop().browse(htmlFile.toURI()); - - return writer.toString(); + @Template(name = "/search") + public Map doSearch(@QueryParam("q") String keyword) throws IOException { + // build Node to avoid injection + NodeValue nv = new NodeValueString(keyword); + System.out.println(nv.toString()); + Map map = new HashMap<>(); + map.put("results", ""); + return new HashMap<>(); + +// +// try (RDFConnection conn = RDFConnectionFactory.connect(SAREFServer.DS)) { +// +// ResultSet countRs = conn.query(query)fetch(v.getUri()); +// +// +// } +// +// SearchKeyWord queryResults = new SearchKeyWord(); +// String results = queryResults.doSearchResultsLabels(keyword); +// Map map = new HashMap<>(); +// map.put("results", results); +// return map; } } diff --git a/src/main/java/org/etsi/saref/server/resources/SearchKeyWord.java b/src/main/java/org/etsi/saref/server/resources/SearchKeyWord.java deleted file mode 100644 index bacb98f406388f311595ff58e11e49f8ff30f93b..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/saref/server/resources/SearchKeyWord.java +++ /dev/null @@ -1,136 +0,0 @@ -/** - * - */ -package org.etsi.saref.server.resources; - -import org.apache.jena.query.Dataset; -import org.apache.jena.query.DatasetFactory; -import org.apache.jena.query.Query; -import org.apache.jena.query.QueryExecution; -import org.apache.jena.query.QueryExecutionFactory; -import org.apache.jena.query.QueryFactory; -import org.apache.jena.query.ReadWrite; -import org.apache.jena.query.ResultSet; -import org.apache.jena.query.ResultSetFormatter; -import org.apache.jena.query.text.EntityDefinition; -import org.apache.jena.query.text.TextDatasetFactory; -import org.apache.jena.query.text.TextIndexConfig; -import org.apache.jena.rdf.model.Model; -import org.apache.jena.riot.RDFDataMgr; -import org.apache.jena.sparql.util.QueryExecUtils; -import org.apache.jena.vocabulary.RDFS; -import org.apache.lucene.store.Directory; -import org.apache.lucene.store.RAMDirectory; - - -/** - * @author Omar Qawasmeh - */ - -public class SearchKeyWord { - - - private static final String DS = "http://localhost:3030/test-sarefTtl/data"; - private String searchResultsLabels; - private String title; - private Dataset ds; - - public SearchKeyWord() { - ds = createCode(); - loadData(ds, DS); - - } - - /** - * @return the searchResultsLabels - */ - public String getSearchResultsLabels() { - return searchResultsLabels; - } - - - public void setSearchResultsLabels(String searchResultsLabels) { - this.searchResultsLabels = queryDataLabels(ds, searchResultsLabels); - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = queryDataLabels(ds, "has meter reading type"); - } - // public static void main(String args[]) { - - // queryDataComment(ds, "some measurements that are characterized by a - // certain value "); - // } - - public static Dataset createCode() { - - Dataset ds1 = DatasetFactory.create(); - - // EntityDefinition entDef = new EntityDefinition("uri", "text", - // RDFS.label) ; - EntityDefinition entDef = new EntityDefinition("uri", "text"); - entDef.setPrimaryPredicate(RDFS.label.asNode()); - entDef.setPrimaryPredicate(RDFS.comment.asNode()); - - Directory dir = new RAMDirectory(); - - Dataset ds = TextDatasetFactory.createLucene(ds1, dir, new TextIndexConfig(entDef)); - - return ds; - } - - public static void loadData(Dataset dataset, String TtlFileLocation) { - - // dataset.begin(ReadWrite.WRITE); - try { - Model m = dataset.getDefaultModel(); - RDFDataMgr.read(m, TtlFileLocation); - dataset.commit(); - } finally { - dataset.end(); - } - - } - - public static String queryDataLabels(Dataset dataset, String kw) { - String queryResults; - String queryString = "PREFIX : " + "PREFIX text: " - + "PREFIX rdfs: " + "SELECT * " + " { " - + "?s text:query (rdfs:label '" + kw + "') ;" + " rdfs:label ?label" + " } limit 10"; - - dataset.begin(ReadWrite.READ); - try { - Query q = QueryFactory.create(queryString); - QueryExecution qexec = QueryExecutionFactory.create(q, dataset); - ResultSet qresults = qexec.execSelect(); - queryResults = ResultSetFormatter.asText(qresults); - - // QueryExecUtils.executeQuery(q, qexec); - // searchResultsLabels=QueryExecUtils.executeQuery(q, qexec)+""; - } finally { - dataset.end(); - } - return queryResults; - } - - public static void queryDataComment(Dataset dataset, String kw) { - - String queryString = "PREFIX : " + "PREFIX text: " - + "PREFIX rdfs: " + "SELECT * " + " { " - + "?s text:query (rdfs:comment '" + kw + "') ;" + " rdfs:comment ?comment" + " } limit 10"; - - dataset.begin(ReadWrite.READ); - try { - Query q = QueryFactory.create(queryString); - QueryExecution qexec = QueryExecutionFactory.create(q, dataset); - QueryExecUtils.executeQuery(q, qexec); - } finally { - dataset.end(); - } - - } -} diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties index e6f91fbd373d6bfea2b3f9b0041a7f2edabba763..c77a1503f6f8b613399c44bdeb15ed7a59cece21 100644 --- a/src/main/resources/log4j.properties +++ b/src/main/resources/log4j.properties @@ -1,6 +1,6 @@ log4j.rootLogger=TRACE, stdout log4j.logger.com.jayway.jsonpath.internal.path=OFF -log4j.logger.org.eclipse.jetty=WARN +log4j.logger.org.eclipse.jetty=TRACE log4j.logger.org.apache.jena.riot.system.stream=WARN log4j.logger.org.apache.jena.util=WARN log4j.logger.org.apache.http=WARN diff --git a/src/main/resources/saref-portal-generator/LICENSE b/src/main/resources/saref-portal-generator/LICENSE deleted file mode 100644 index 4436d6da4c55a84b9f62a8002984f854ba472fa6..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/LICENSE +++ /dev/null @@ -1,23 +0,0 @@ -Copyright 2019 ETSI - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. -3. Neither the name of the copyright holder nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/.htaccess b/src/main/resources/saref-portal-generator/public/.htaccess deleted file mode 100644 index dc4663963199a3bc8205c7810b415fdbafd3f91c..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/.htaccess +++ /dev/null @@ -1,104 +0,0 @@ -Options -MultiViews - -RewriteEngine on -DirectorySlash Off - -# internal redirects for core - -# redirects core to core/v3.1.1/core -RewriteRule ^core$ /core/v3.1.1/core - -# redirects core/example to core/v3.1.1/example -# redirects core/example/ to core/v3.1.1/example -RewriteRule ^core/example/?$ /core/v3.1.1/example - -# redirects core/v1.1.1 to core/v1.1.1/core -RewriteRule ^core/v([0-9]+)\.([0-9]+)\.([0-9]+)/?$ /core/v$1.$2.$3/core - -# redirects core/v1.1.1.ttl to core/v1.1.1/core.ttl -RewriteRule ^core/v([0-9]+)\.([0-9]+)\.([0-9]+)\.([^\./]+)$ /core/v$1.$2.$3/core.$4 [R=302,NE] - -# redirects core.ttl to core/v3.1.1/core.ttl -RewriteRule ^core\.([^\./]*)$ /core/v3.1.1/core.$1 [R=302,NE] - - -# internal redirects for sarefabcd - -# redirects saref4ener to saref4ener/latest/saref4ener -RewriteRule ^(saref[^\./]*)$ /$1/latest/$1 - -# redirects saref4ener/latest to saref4ener/latest/saref4ener -# redirects saref4ener/latest/ to saref4ener/latest/saref4ener -RewriteRule ^(saref[^\./]*)/latest/?$ /$1/latest/$1 - -# redirects saref4ener/example to saref4ener/latest/example -# redirects saref4ener/example/ to saref4ener/latest/example -RewriteRule ^(saref[^\./]*)/example/?$ /$1/latest/example - -# redirects saref4ener/v1.1.1 to saref4ener/v1.1.1/saref4ener -# redirects saref4ener/v1.1.1/ to saref4ener/v1.1.1/saref4ener -RewriteRule ^(saref[^\./]*)/v([0-9]+)\.([0-9]+)\.([0-9]+)/?$ /$1/v$2.$3.$4/$1 - -# redirects saref4ener/latest.ttl to saref4ener/latest/saref4ener.ttl -RewriteRule ^(saref[^\./]*)/latest\.([^\./]+)$ /$1/latest/$1.$2 [R=302,NE] - -# redirects saref4ener/v1.1.1.ttl to saref4ener/v1.1.1/saref4ener.ttl -RewriteRule ^(saref[^\./]*)/v([0-9]+)\.([0-9]+)\.([0-9]+)\.([^\./]+)$ /$1/v$2.$3.$4/$1.$5 [R=302,NE] - -# redirects saref4ener.ttl to saref4ener/latest/saref4ener.ttl -RewriteRule ^(saref[^\./]*)\.([^\./]*)$ /$1/latest/$1.$2 [R=302,NE] - - -# Main - -# internal redirects for core - -# redirects core/bbb/core to core/bbb/core.html -RewriteCond %{HTTP_ACCEPT} !(application/rdf\+xml|text/turtle|text/n3) -RewriteRule ^core/([^/]+)/core$ /core/$1/core.html [R=302,NE] - -# redirects core/bbb/core to core/bbb/core.rdf -RewriteCond %{HTTP_ACCEPT} application/rdf\+xml -RewriteRule ^core/([^/]+)/core$ /core/$1/core.rdf [R=302,NE] - -# redirects core/bbb/core to core/bbb/core.ttl -RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^core/([^/]+)/core$ /core/$1/core.ttl [R=302,NE] - -# redirects core/bbb/core to core/bbb/core.n3 -RewriteCond %{HTTP_ACCEPT} text/n3 -RewriteRule ^core/([^/]+)/core$ /core/$1/core.n3 [R=302,NE] - - - -# internal redirects for sarefabcd - -# redirects sarefaaa/bbb/sarefccc to sarefaaa/bbb/sarefccc.html -RewriteCond %{HTTP_ACCEPT} !(application/rdf\+xml|text/turtle|text/n3) -RewriteRule ^(saref[^\./]*)/([^/]+)/(saref[^\./]*)$ /$1/$2/$3.html [R=302,NE] - -# redirects sarefaaa/bbb/sarefccc to sarefaaa/bbb/sarefccc.rdf -RewriteCond %{HTTP_ACCEPT} application/rdf\+xml -RewriteRule ^(saref[^\./]*)/([^/]+)/(saref[^\./]*)$ /$1/$2/$3.rdf [R=302,NE] - -# redirects sarefaaa/bbb/sarefccc to sarefaaa/bbb/sarefccc.ttl -RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^(saref[^\./]*)/([^/]+)/(saref[^\./]*)$ /$1/$2/$3.ttl [R=302,NE] - -# redirects sarefaaa/bbb/sarefccc to sarefaaa/bbb/sarefccc.n3 -RewriteCond %{HTTP_ACCEPT} text/n3 -RewriteRule ^(saref[^\./]*)/([^/]+)/(saref[^\./]*)$ /$1/$2/$3.n3 [R=302,NE] - - -# examples - -# redirects core/bbb/example to core/bbb/example.ttl -RewriteRule ^core/([^/]+)/example$ /core/$1/example.ttl [R=302,NE] - - -# redirects sarefaaa/bbb/example to sarefaaa/bbb/example.ttl -RewriteRule ^(saref[^\./]*)/([^/]+)/example$ /$1/$2/example.ttl [R=302,NE] - - - - diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/406.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/406.html deleted file mode 100644 index 2a3157a358ba8e125a5ca5c66e77169ea495d9fa..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/406.html +++ /dev/null @@ -1,10 +0,0 @@ - - -406 Not Acceptable - - -

Not Acceptable

-

An appropriate representation of the requested resource could not be found on this server.

- Available variants: - - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.html deleted file mode 100644 index 38963818db0ea30348456cbab0c2f613ce401387..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - SAREF: the Smart Applications REFerence ontology - - - - - - - - - - - -
-
-
language en
-

SAREF: the Smart Applications REFerence ontology

- - -
-
Revision:
-
3.1.1
-
Contributors:
-
http://maxime-lefrancois.info/me#
http://www.garcia-castro.com/foaf.rdf#me
https://w3id.org/people/mpoveda/
https://www.linkedin.com/in/lauradaniele
- -
Publisher:
-
https://www.etsi.org/
-
Download serialization:
JSON-LD RDF/XML N-Triples TTL
License:
https://forge.etsi.org/etsi-software-license -
Cite as:
-
SAREF: the Smart Applications REFerence ontology.Revision: 3.1.1.
-
- -Provenance of this page
-
-
-
-Ontology Specification Draft -
-
-
-
-
-
-
- -
-

Acknowledgements back to ToC

-

-The authors would like to thank Silvio Peroni for developing LODE, a Live OWL Documentation Environment, which is used for representing the Cross Referencing Section of this document and Daniel Garijo for developing Widoco, the program used to create the template used in this documentation.

-
- - - -
- - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.json b/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.json deleted file mode 100644 index a99a6f6025a746c1e97506d04ba97638c1d2181c..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.json +++ /dev/null @@ -1,2865 +0,0 @@ -[ { - "@id" : "_:genid1", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/ActuatingFunction" - } ] -}, { - "@id" : "_:genid10", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isUsedFor" - } ] -}, { - "@id" : "_:genid11", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/makesMeasurement" - } ] -}, { - "@id" : "_:genid12", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/measuresProperty" - } ] -}, { - "@id" : "_:genid13", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Service" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/offers" - } ] -}, { - "@id" : "_:genid14", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Task" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/accomplishes" - } ] -}, { - "@id" : "_:genid15", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ] -}, { - "@id" : "_:genid16", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#maxCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasManufacturer" - } ] -}, { - "@id" : "_:genid17", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#maxCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasModel" - } ] -}, { - "@id" : "_:genid18", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseFunction" - } ] -}, { - "@id" : "_:genid19", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasState" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseState" - } ] -}, { - "@id" : "_:genid2", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseState" - } ] -}, { - "@id" : "_:genid20", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasThresholdMeasurement" - } ] -}, { - "@id" : "_:genid21", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasMeasurement" - } ] -}, { - "@id" : "_:genid22", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasProperty" - } ] -}, { - "@id" : "_:genid23", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasCommand" - } ] -}, { - "@id" : "_:genid24", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid25", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid26", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid27", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid28", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/controlsProperty" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Light" - } ] -}, { - "@id" : "_:genid29", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffFunction" - } ] -}, { - "@id" : "_:genid3", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid30", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasState" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffState" - } ] -}, { - "@id" : "_:genid31", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/offers" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/SwitchOnService" - } ] -}, { - "@id" : "_:genid32", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isMeasuredIn" - } ] -}, { - "@id" : "_:genid33", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isMeasurementOf" - } ] -}, { - "@id" : "_:genid34", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/relatesToProperty" - } ] -}, { - "@id" : "_:genid35", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isMeasuredIn" - } ], - "http://www.w3.org/2002/07/owl#qualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ] -}, { - "@id" : "_:genid36", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/relatesToProperty" - } ], - "http://www.w3.org/2002/07/owl#qualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ] -}, { - "@id" : "_:genid37", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "http://www.w3.org/2001/XMLSchema#dateTime" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasTimestamp" - } ] -}, { - "@id" : "_:genid38", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#cardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasValue" - } ] -}, { - "@id" : "_:genid39", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ] -}, { - "@id" : "_:genid4", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ] -}, { - "@id" : "_:genid40", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasMeterReading" - } ] -}, { - "@id" : "_:genid41", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "_:genid42" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasMeterReadingType" - } ] -}, { - "@id" : "_:genid42", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2002/07/owl#unionOf" : [ { - "@list" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - }, { - "@id" : "https://saref.etsi.org/core/Property" - } ] - } ] -}, { - "@id" : "_:genid45", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/EventFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid46", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffState" - } ] -}, { - "@id" : "_:genid47", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid48", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffState" - } ] -}, { - "@id" : "_:genid49", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid5", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid50", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseState" - } ] -}, { - "@id" : "_:genid51", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid52", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Profile" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/consistsOf" - } ] -}, { - "@id" : "_:genid53", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Price" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasPrice" - } ] -}, { - "@id" : "_:genid54", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Time" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasTime" - } ] -}, { - "@id" : "_:genid55", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "_:genid56" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isAbout" - } ] -}, { - "@id" : "_:genid56", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2002/07/owl#unionOf" : [ { - "@list" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - }, { - "@id" : "https://saref.etsi.org/core/Property" - } ] - } ] -}, { - "@id" : "_:genid59", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isControlledByDevice" - } ] -}, { - "@id" : "_:genid6", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/consistsOf" - } ] -}, { - "@id" : "_:genid60", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isMeasuredByDevice" - } ] -}, { - "@id" : "_:genid61", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isPropertyOf" - } ] -}, { - "@id" : "_:genid62", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/relatesToMeasurement" - } ] -}, { - "@id" : "_:genid63", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasSensingRange" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ] -}, { - "@id" : "_:genid64", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasSensorType" - } ] -}, { - "@id" : "_:genid65", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ] -}, { - "@id" : "_:genid66", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isOfferedBy" - } ] -}, { - "@id" : "_:genid67", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#minQualifiedCardinality" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", - "@value" : "1" - } ], - "http://www.w3.org/2002/07/owl#onClass" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/represents" - } ] -}, { - "@id" : "_:genid68", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MultiLevelState" - } ] -}, { - "@id" : "_:genid69", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/LevelControlFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid7", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/controlsProperty" - } ] -}, { - "@id" : "_:genid70", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/EventFunction" - } ] -}, { - "@id" : "_:genid71", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ] -}, { - "@id" : "_:genid72", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/measuresProperty" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Smoke" - } ] -}, { - "@id" : "_:genid73", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/StartStopState" - } ] -}, { - "@id" : "_:genid74", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/StartStopFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid75", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MultiLevelState" - } ] -}, { - "@id" : "_:genid76", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/LevelControlFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid77", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/MultiLevelState" - } ] -}, { - "@id" : "_:genid78", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/LevelControlFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid79", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/actsUpon" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/StartStopState" - } ] -}, { - "@id" : "_:genid8", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Profile" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasProfile" - } ] -}, { - "@id" : "_:genid80", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/StartStopFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid81", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isOfferedBy" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/LightSwitch" - } ] -}, { - "@id" : "_:genid82", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/represents" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffFunction" - } ] -}, { - "@id" : "_:genid83", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasFunction" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ] -}, { - "@id" : "_:genid84", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/measuresProperty" - } ], - "http://www.w3.org/2002/07/owl#someValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/Temperature" - } ] -}, { - "@id" : "_:genid85", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/OnOffFunction" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "_:genid9", - "@type" : [ "http://www.w3.org/2002/07/owl#Restriction" ], - "http://www.w3.org/2002/07/owl#allValuesFrom" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ], - "http://www.w3.org/2002/07/owl#onProperty" : [ { - "@id" : "https://saref.etsi.org/core/hasState" - } ] -}, { - "@id" : "http://purl.org/dc/terms/contributor", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/dc/terms/description", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/dc/terms/issued", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/dc/terms/license", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/dc/terms/publisher", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/dc/terms/title", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/vocab/vann/preferredNamespacePrefix", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "http://purl.org/vocab/vann/preferredNamespaceUri", - "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] -}, { - "@id" : "https://saref.etsi.org/core/", - "@type" : [ "http://www.w3.org/2002/07/owl#Ontology" ], - "http://purl.org/dc/terms/contributor" : [ { - "@id" : "http://maxime-lefrancois.info/me#" - }, { - "@id" : "http://www.garcia-castro.com/foaf.rdf#me" - }, { - "@id" : "https://w3id.org/people/mpoveda/" - }, { - "@id" : "https://www.linkedin.com/in/lauradaniele" - } ], - "http://purl.org/dc/terms/description" : [ { - "@language" : "en", - "@value" : "The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market." - } ], - "http://purl.org/dc/terms/issued" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#date", - "@value" : "2020-02-11" - } ], - "http://purl.org/dc/terms/license" : [ { - "@id" : "https://forge.etsi.org/etsi-software-license" - } ], - "http://purl.org/dc/terms/publisher" : [ { - "@id" : "https://www.etsi.org/" - } ], - "http://purl.org/dc/terms/title" : [ { - "@language" : "en", - "@value" : "SAREF: the Smart Applications REFerence ontology" - } ], - "http://purl.org/vocab/vann/preferredNamespacePrefix" : [ { - "@value" : "saref" - } ], - "http://purl.org/vocab/vann/preferredNamespaceUri" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#anyURI", - "@value" : "https://saref.etsi.org/core/" - } ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@value" : "Information about changes compared to version 1.1.1:\n - The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings, including the reuse of the W3C� WGS84 geo positioning vocabulary.\n - The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class.\n - The information specific for energy efficiency has been moved to the SAREF4ENER extension. For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension. \n - The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy).\n - The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension, in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property).\n - Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed.\n - The saref:UnitOfMeasure subclasses use individuals from the OM ontology for unit of measures, but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used.\n - The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes. \n - The subclasses of saref:Task have been transormed in individuals.\n - The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class." - }, { - "@value" : "Information about changes compared to version 2.1.1: \n - Added the saref:FeatureOfInterest class and the properties used to relate it to saref:Measurement (saref:hasMeasurement and saref:isMeasurementOf) and to saref:Property (saref:hasProperty and saref:isPropertyOf).\n - Added the saref:measurementMadeBy property as inverse of saref:makesMeasurement.\n - The saref:relatesToProperty and saref:relatesToMeasurement properties are now inverse of each other.\n - The range of saref:hasValue, which was defined as xsd:float, has been removed to support other datatypes for measurements.\n - The range of datatype properties, which was defined as xsd:string, has been removed in order to support strings with language tags (rdf:langString). This affects saref:hasDescription, saref:hasManufacturer, saref:hasModel and saref:hasName, which now have implicitly a range of rdfs:Literal.\n - The saref:hasName property has been removed and the use of rdfs:label is recommended. \n - The saref:hasDescription property has been deprecated and the use of rdfs:comment is recommended. \n - Too restrictive restrictions have been removed and in some cases the ontology documentation has been updated to reflect this: a saref:Command having at most one saref:hasDescription; a saref:Task being accomplished by at least one saref:Device; a saref:Device having a typical consumption of only energy or power; a saref:Commodity being measured in units of measure; restrictions on the values of saref:accomplishes that only covered specific use cases; universal restrictions on the saref:actsUpon property have been changed to existential ones; restrictions on the commands that a saref:Function may have, since there could be others not included in the defined enumerations; restrictive documentation of saref:EventFunction and saref:SmokeSensor.\n - Bugs have been fixed: some devices (saref:DoorSwitch, saref:EnergyMeter, saref:LigthSwitch, saref:SmokeSensor, and saref:TemperatureSensor) were defined as subclass of a device and at the same time as consisting of such device; a saref:LightSwitch controls light and does not measure light, since it is an actuator; incorrect documentation of saref:OnState and saref:OffState.\n - The saref:BuildingRelated, saref:EnergyRelated and saref:FunctionRelated classes have been removed, since the different extensions already classify the device types.\n - The instances of the subclasses of saref:Command have been removed, since they represent examples.\n - The instances of saref:UnitOfMeasure have been moved to examples.\n - The classes related to the SAREF4ENER extension have been removed: saref:Generator, saref:Storage, saref:Load and saref:EnergyMeter.\n - Some instances of saref:Device have been moved to examples: saref:WashingMachine, saref:LightingDevice, saref:MicroRenewable, saref:Multimedia, and saref:Network.\n - Added domain and range axioms wherever the definition of a property unambiguously identifies the domain or the range of the property.\n - The OWL Time ontology is not imported anymore.\n - The documentation of some ontology terms has been updated for clarification.\n - Language tags have been added to all labels and comments.\n" - } ], - "http://www.w3.org/2002/07/owl#versionInfo" : [ { - "@value" : "3.1.1" - } ] -}, { - "@id" : "https://saref.etsi.org/core/ActuatingFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Actuating function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Actuator", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A device responsible for moving or controlling a mechanism or system by performing an actuating function" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Actuator" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Device" - }, { - "@id" : "_:genid1" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Appliance", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Appliance" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Cleaning", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Cleaning" - } ] -}, { - "@id" : "https://saref.etsi.org/core/CloseCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Close command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid2" - }, { - "@id" : "_:genid3" - } ], - "http://www.w3.org/2002/07/owl#disjointWith" : [ { - "@id" : "https://saref.etsi.org/core/OpenCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/CloseState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is CLOSE" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Close state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Coal", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of commodity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Coal" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Comfort", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Comfort" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Command", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid4" - }, { - "@id" : "_:genid5" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Commodity", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. " - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Commodity" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Currency", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The class of units of measure for price" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Currency" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Device", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid6" - }, { - "@id" : "_:genid7" - }, { - "@id" : "_:genid8" - }, { - "@id" : "_:genid9" - }, { - "@id" : "_:genid10" - }, { - "@id" : "_:genid11" - }, { - "@id" : "_:genid12" - }, { - "@id" : "_:genid13" - }, { - "@id" : "_:genid14" - }, { - "@id" : "_:genid15" - }, { - "@id" : "_:genid16" - }, { - "@id" : "_:genid17" - } ] -}, { - "@id" : "https://saref.etsi.org/core/DoorSwitch", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Door switch" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Switch" - }, { - "@id" : "_:genid18" - }, { - "@id" : "_:genid19" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Drying", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Drying" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Electricity", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of commodity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Electricity" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Energy", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. " - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Energy" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/EnergyEfficiency", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "EnergyEfficiency" - } ] -}, { - "@id" : "https://saref.etsi.org/core/EnergyUnit", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure for energy" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Energy unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Entertainment", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Entertainment" - } ] -}, { - "@id" : "https://saref.etsi.org/core/EventFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Event function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Function" - }, { - "@id" : "_:genid20" - } ] -}, { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A feature of interest represents any real world entity from which a property is measured." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Feature of interest" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid21" - }, { - "@id" : "_:genid22" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Function", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. " - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid23" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Gas", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of commodity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Gas" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - } ] -}, { - "@id" : "https://saref.etsi.org/core/GetCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Get command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ] -}, { - "@id" : "https://saref.etsi.org/core/GetCurrentMeterValueCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of get command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Get current meter value command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/GetCommand" - }, { - "@id" : "_:genid24" - } ] -}, { - "@id" : "https://saref.etsi.org/core/GetMeterDataCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of get command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Get meter data command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/GetCommand" - }, { - "@id" : "_:genid25" - } ] -}, { - "@id" : "https://saref.etsi.org/core/GetMeterHistoryCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of get command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Get meter history command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/GetCommand" - }, { - "@id" : "_:genid26" - } ] -}, { - "@id" : "https://saref.etsi.org/core/GetSensingDataCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of get command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Get sensing data command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/GetCommand" - }, { - "@id" : "_:genid27" - } ] -}, { - "@id" : "https://saref.etsi.org/core/HVAC", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "HVAC" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Humidity", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Humidity" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/IlluminanceUnit", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure for light" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Illuminance unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/LevelControlFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. " - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Level control function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/ActuatingFunction" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Light", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Light" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/LightSwitch", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Light switch" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Switch" - }, { - "@id" : "_:genid28" - }, { - "@id" : "_:genid29" - }, { - "@id" : "_:genid30" - }, { - "@id" : "_:genid31" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Lighting", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Lighting" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Measurement", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid32" - }, { - "@id" : "_:genid33" - }, { - "@id" : "_:genid34" - }, { - "@id" : "_:genid35" - }, { - "@id" : "_:genid36" - }, { - "@id" : "_:genid37" - }, { - "@id" : "_:genid38" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Meter", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Meter" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Device" - }, { - "@id" : "_:genid39" - } ] -}, { - "@id" : "https://saref.etsi.org/core/MeterReading", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Meter reading" - } ] -}, { - "@id" : "https://saref.etsi.org/core/MeteringFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A function that allows to get data from a meter, such as current meter reading or instantaneous demand" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Metering function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Function" - }, { - "@id" : "_:genid40" - }, { - "@id" : "_:genid41" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Motion", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Motion" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/MultiLevelState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of state" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Multi level state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/NotifyCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Notify command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid45" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Occupancy", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Occupancy" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OffCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Off command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid46" - }, { - "@id" : "_:genid47" - } ], - "http://www.w3.org/2002/07/owl#disjointWith" : [ { - "@id" : "https://saref.etsi.org/core/OnCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OffState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is Off" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Off state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/OnOffState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OnCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "On command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid48" - }, { - "@id" : "_:genid49" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OnOffFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "An actuating function that allows to switch on and off an actuator" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "On off function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/ActuatingFunction" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OnOffState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of state" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "On off state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OnState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is On" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "On state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/OnOffState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OpenCloseFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "An actuating function that allows to open and close a device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Open close function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/ActuatingFunction" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OpenCloseState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of state" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Open close state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OpenCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Open command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid50" - }, { - "@id" : "_:genid51" - } ] -}, { - "@id" : "https://saref.etsi.org/core/OpenState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is OPEN " - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Open state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/OpenCloseState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/PauseCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Pause command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Power", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Power" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/PowerUnit", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure for power" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Power unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Pressure", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Pressure" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/PressureUnit", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure for pressure" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Pressure unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Price", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Price" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Profile", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Profile" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid52" - }, { - "@id" : "_:genid53" - }, { - "@id" : "_:genid54" - }, { - "@id" : "_:genid55" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Property", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A quality of a feature of interest that can be measured; an aspect of a feature of interest that is intrinsic to and cannot exist without the feature" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Property" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid59" - }, { - "@id" : "_:genid60" - }, { - "@id" : "_:genid61" - }, { - "@id" : "_:genid62" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Safety", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Safety" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SensingFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Sensing function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Function" - }, { - "@id" : "_:genid63" - }, { - "@id" : "_:genid64" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Sensor", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Sensor" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Device" - }, { - "@id" : "_:genid65" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Service", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Service" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "_:genid66" - }, { - "@id" : "_:genid67" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SetAbsoluteLevelCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of set level command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Set absolute level command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/SetLevelCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SetLevelCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Set level command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid68" - }, { - "@id" : "_:genid69" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SetRelativeLevelCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of set level command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Set relative level command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/SetLevelCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Smoke", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Smoke" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SmokeSensor", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A sensor that performs the saref:SensingFunction and the saref:EventFunction, and is used for the purpose of sensing a property of type saref:Smoke. A saref:SmokeSensor is typically used to saref:accomplish saref:Safety." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Smoke sensor" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Sensor" - }, { - "@id" : "_:genid70" - }, { - "@id" : "_:genid71" - }, { - "@id" : "_:genid72" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StartCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Start command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid73" - }, { - "@id" : "_:genid74" - } ], - "http://www.w3.org/2002/07/owl#disjointWith" : [ { - "@id" : "https://saref.etsi.org/core/StopCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StartState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is STARTED" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Start state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/StartStopState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StartStopFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "An actuating function that allows to start and stop a device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Start stop function" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/ActuatingFunction" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StartStopState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of state" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Start stop state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/State", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StepDownCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Step down command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid75" - }, { - "@id" : "_:genid76" - } ], - "http://www.w3.org/2002/07/owl#disjointWith" : [ { - "@id" : "https://saref.etsi.org/core/StepUpCommand" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StepUpCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Step up command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid77" - }, { - "@id" : "_:genid78" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StopCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Stop command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid79" - }, { - "@id" : "_:genid80" - } ] -}, { - "@id" : "https://saref.etsi.org/core/StopState", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The state of a device that is STOPPED" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Stop state" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/StartStopState" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Switch", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Switch" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Actuator" - } ] -}, { - "@id" : "https://saref.etsi.org/core/SwitchOnService", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of service that represents an on/off function to the network" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Switch on service" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Service" - }, { - "@id" : "_:genid81" - }, { - "@id" : "_:genid82" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Task", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. Tasks can be accomplished by devices (saref:isAccomplishedBy)." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Task" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Temperature", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Temperature" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/TemperatureSensor", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A sensor that is used for the purpose of sensing a property of type saref:Temperature. A saref:TemperatureSensor is typically used to saref:accomplish saref:Comfort." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Temperature sensor" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Sensor" - }, { - "@id" : "_:genid83" - }, { - "@id" : "_:genid84" - } ] -}, { - "@id" : "https://saref.etsi.org/core/TemperatureUnit", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure for temperature" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Temperature unit" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Time", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A class that allows to specify the time concept." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Time" - } ] -}, { - "@id" : "https://saref.etsi.org/core/ToggleCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Toggle command" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Command" - }, { - "@id" : "_:genid85" - } ] -}, { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called \"watt\". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM)." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Unit of measure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Washing", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Washing" - } ] -}, { - "@id" : "https://saref.etsi.org/core/Water", - "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of commodity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "Water" - } ], - "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { - "@id" : "https://saref.etsi.org/core/Commodity" - } ] -}, { - "@id" : "https://saref.etsi.org/core/WellBeing", - "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual", "https://saref.etsi.org/core/Task" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A type of task for which a device is designed" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "WellBeing" - } ] -}, { - "@id" : "https://saref.etsi.org/core/accomplishes", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a certain entity (e.g., a device) and the task it accomplishes" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "accomplishes" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Task" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/isAccomplishedBy" - } ] -}, { - "@id" : "https://saref.etsi.org/core/actsUpon", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a command and a state" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "acts upon" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/consistsOf", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor)" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "consists of" - } ] -}, { - "@id" : "https://saref.etsi.org/core/controlsProperty", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship specifying the property that can be controlled by a certain device" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "controls property" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasCommand", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a function and a command" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has command" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/isCommandOf" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasDescription", - "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag." - }, { - "@language" : "en", - "@value" : "DEPRECATED: The use of rdfs:comment is recommended instead." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has description" - } ], - "http://www.w3.org/2002/07/owl#deprecated" : [ { - "@type" : "http://www.w3.org/2001/XMLSchema#boolean", - "@value" : "true" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasFunction", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the function of a device" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has function" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasManufacturer", - "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has manufacturer" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasMeasurement", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a feature of interest and a measurement about it" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/isMeasurementOf" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasMeterReading", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a metering function and the measurement of the reading" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has meter reading" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasMeterReadingType", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.)" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/MeteringFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has meter reading type" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasModel", - "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has model" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasPrice", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship indentifying the price associated to an entity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has price" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Price" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasProfile", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship associating a profile to a certain device" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has profile" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Profile" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasProperty", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a feature of interest and a property of that feature" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has property" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/isPropertyOf" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasSensingRange", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a sensing function and a measurement identifying the range of a sensor detection" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has sensing range" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasSensorType", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) " - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/SensingFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has sensor type" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasState", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the type of state of a device" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has state" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/State" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasThresholdMeasurement", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship associated with an event function to notify that a certain threshold measurement has been exceeded" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/EventFunction" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has threshold measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasTime", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship to associate time information to an entity" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has time" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Time" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasTimestamp", - "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship stating the timestamp of an entity (e.g. a measurement)." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has timestamp" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasTypicalConsumption", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the typical (energy or power) consumption of a device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has typical consumption" - } ] -}, { - "@id" : "https://saref.etsi.org/core/hasValue", - "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes." - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "has value" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isAbout", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying what an entity, such as a profile, is about" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "isAbout" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isAccomplishedBy", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying an entity (e.g., a device) that can accomplish a task." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Task" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is accomplished by" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isCommandOf", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a command and a function." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Command" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is command of" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isControlledByDevice", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship specifying the devices that can control a certain property" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is controlled by device" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isMeasuredByDevice", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship specifying the devices that can measure a certain property" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is measured by device" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isMeasuredIn", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship identifying the unit of measure used for a certain entity." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is measured in" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/UnitOfMeasure" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isMeasurementOf", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a measurement and the feature of interest whose quality was measured" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "isMeasurementOf" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isOfferedBy", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a service and a device that offers the service" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Service" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is offered by" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/offers" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isPropertyOf", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a property and the feature of interest it belongs to" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is property of" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/FeatureOfInterest" - } ] -}, { - "@id" : "https://saref.etsi.org/core/isUsedFor", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship specifying the commodity for which a device is used for" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "is used for" - } ] -}, { - "@id" : "https://saref.etsi.org/core/makesMeasurement", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "makes measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/measurementMadeBy" - } ] -}, { - "@id" : "https://saref.etsi.org/core/measurementMadeBy", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relation between a measurement and the device that made it." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "measurement made by" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ] -}, { - "@id" : "https://saref.etsi.org/core/measuresProperty", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship specifying the property that can be measured by a certain device" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "measures property" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/offers", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a device and a service" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Device" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "offers" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Service" - } ] -}, { - "@id" : "https://saref.etsi.org/core/relatesToMeasurement", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a property and the measurements it relates to" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "relates to measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2002/07/owl#inverseOf" : [ { - "@id" : "https://saref.etsi.org/core/relatesToProperty" - } ] -}, { - "@id" : "https://saref.etsi.org/core/relatesToProperty", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a measurement and the property it relates to" - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Measurement" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "relates to property" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Property" - } ] -}, { - "@id" : "https://saref.etsi.org/core/represents", - "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], - "http://www.w3.org/2000/01/rdf-schema#comment" : [ { - "@language" : "en", - "@value" : "A relationship between a service and a function." - } ], - "http://www.w3.org/2000/01/rdf-schema#domain" : [ { - "@id" : "https://saref.etsi.org/core/Service" - } ], - "http://www.w3.org/2000/01/rdf-schema#label" : [ { - "@language" : "en", - "@value" : "represents" - } ], - "http://www.w3.org/2000/01/rdf-schema#range" : [ { - "@id" : "https://saref.etsi.org/core/Function" - } ] -} ] \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.nt b/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.nt deleted file mode 100644 index c87cf12cbdc7c4bb942086275dbf2a484bab06c4..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.nt +++ /dev/null @@ -1,1230 +0,0 @@ - . - . - . - . - . - "The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market."@en . - "2020-02-11"^^ . - . - . - "SAREF: the Smart Applications REFerence ontology"@en . - "saref" . - "https://saref.etsi.org/core/"^^ . - "Information about changes compared to version 1.1.1:\n - The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings, including the reuse of the W3C� WGS84 geo positioning vocabulary.\n - The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class.\n - The information specific for energy efficiency has been moved to the SAREF4ENER extension. For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension. \n - The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy).\n - The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension, in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property).\n - Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed.\n - The saref:UnitOfMeasure subclasses use individuals from the OM ontology for unit of measures, but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used.\n - The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes. \n - The subclasses of saref:Task have been transormed in individuals.\n - The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class." . - "Information about changes compared to version 2.1.1: \n - Added the saref:FeatureOfInterest class and the properties used to relate it to saref:Measurement (saref:hasMeasurement and saref:isMeasurementOf) and to saref:Property (saref:hasProperty and saref:isPropertyOf).\n - Added the saref:measurementMadeBy property as inverse of saref:makesMeasurement.\n - The saref:relatesToProperty and saref:relatesToMeasurement properties are now inverse of each other.\n - The range of saref:hasValue, which was defined as xsd:float, has been removed to support other datatypes for measurements.\n - The range of datatype properties, which was defined as xsd:string, has been removed in order to support strings with language tags (rdf:langString). This affects saref:hasDescription, saref:hasManufacturer, saref:hasModel and saref:hasName, which now have implicitly a range of rdfs:Literal.\n - The saref:hasName property has been removed and the use of rdfs:label is recommended. \n - The saref:hasDescription property has been deprecated and the use of rdfs:comment is recommended. \n - Too restrictive restrictions have been removed and in some cases the ontology documentation has been updated to reflect this: a saref:Command having at most one saref:hasDescription; a saref:Task being accomplished by at least one saref:Device; a saref:Device having a typical consumption of only energy or power; a saref:Commodity being measured in units of measure; restrictions on the values of saref:accomplishes that only covered specific use cases; universal restrictions on the saref:actsUpon property have been changed to existential ones; restrictions on the commands that a saref:Function may have, since there could be others not included in the defined enumerations; restrictive documentation of saref:EventFunction and saref:SmokeSensor.\n - Bugs have been fixed: some devices (saref:DoorSwitch, saref:EnergyMeter, saref:LigthSwitch, saref:SmokeSensor, and saref:TemperatureSensor) were defined as subclass of a device and at the same time as consisting of such device; a saref:LightSwitch controls light and does not measure light, since it is an actuator; incorrect documentation of saref:OnState and saref:OffState.\n - The saref:BuildingRelated, saref:EnergyRelated and saref:FunctionRelated classes have been removed, since the different extensions already classify the device types.\n - The instances of the subclasses of saref:Command have been removed, since they represent examples.\n - The instances of saref:UnitOfMeasure have been moved to examples.\n - The classes related to the SAREF4ENER extension have been removed: saref:Generator, saref:Storage, saref:Load and saref:EnergyMeter.\n - Some instances of saref:Device have been moved to examples: saref:WashingMachine, saref:LightingDevice, saref:MicroRenewable, saref:Multimedia, and saref:Network.\n - Added domain and range axioms wherever the definition of a property unambiguously identifies the domain or the range of the property.\n - The OWL Time ontology is not imported anymore.\n - The documentation of some ontology terms has been updated for clarification.\n - Language tags have been added to all labels and comments.\n" . - "3.1.1" . -# -# -# ################################################################# -# # -# # Annotation properties -# # -# ################################################################# -# -# -# http://purl.org/dc/terms/contributor - . -# -# http://purl.org/dc/terms/description - . -# -# http://purl.org/dc/terms/issued - . -# -# http://purl.org/dc/terms/license - . -# -# http://purl.org/dc/terms/publisher - . -# -# http://purl.org/dc/terms/title - . -# -# http://purl.org/vocab/vann/preferredNamespacePrefix - . -# -# http://purl.org/vocab/vann/preferredNamespaceUri - . -# -# -# -# ################################################################# -# # -# # Object Properties -# # -# ################################################################# -# -# -# https://saref.etsi.org/core/accomplishes - . - . - . - "A relationship between a certain entity (e.g., a device) and the task it accomplishes"@en . - "accomplishes"@en . -# -# https://saref.etsi.org/core/actsUpon - . - . - . - "A relationship between a command and a state"@en . - "acts upon"@en . -# -# https://saref.etsi.org/core/consistsOf - . - "A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor)"@en . - "consists of"@en . -# -# https://saref.etsi.org/core/controlsProperty - . - . - . - "A relationship specifying the property that can be controlled by a certain device"@en . - "controls property"@en . -# -# https://saref.etsi.org/core/hasCommand - . - . - . - . - "A relationship between a function and a command"@en . - "has command"@en . -# -# https://saref.etsi.org/core/hasFunction - . - . - . - "A relationship identifying the function of a device"@en . - "has function"@en . -# -# https://saref.etsi.org/core/hasMeasurement - . - . - . - . - "A relationship between a feature of interest and a measurement about it"@en . - "has measurement"@en . -# -# https://saref.etsi.org/core/hasMeterReading - . - . - . - "A relationship between a metering function and the measurement of the reading"@en . - "has meter reading"@en . -# -# https://saref.etsi.org/core/hasMeterReadingType - . - . - . - "A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.)"@en . - "has meter reading type"@en . -# -# https://saref.etsi.org/core/hasPrice - . - . - "A relationship indentifying the price associated to an entity"@en . - "has price"@en . -# -# https://saref.etsi.org/core/hasProfile - . - . - . - "A relationship associating a profile to a certain device"@en . - "has profile"@en . -# -# https://saref.etsi.org/core/hasProperty - . - . - . - . - "A relationship between a feature of interest and a property of that feature"@en . - "has property"@en . -# -# https://saref.etsi.org/core/hasSensingRange - . - . - . - "A relationship between a sensing function and a measurement identifying the range of a sensor detection"@en . - "has sensing range"@en . -# -# https://saref.etsi.org/core/hasSensorType - . - . - . - "A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) "@en . - "has sensor type"@en . -# -# https://saref.etsi.org/core/hasState - . - . - . - "A relationship identifying the type of state of a device"@en . - "has state"@en . -# -# https://saref.etsi.org/core/hasThresholdMeasurement - . - . - . - "A relationship associated with an event function to notify that a certain threshold measurement has been exceeded"@en . - "has threshold measurement"@en . -# -# https://saref.etsi.org/core/hasTime - . - . - "A relationship to associate time information to an entity"@en . - "has time"@en . -# -# https://saref.etsi.org/core/hasTypicalConsumption - . - "A relationship identifying the typical (energy or power) consumption of a device"@en . - "has typical consumption"@en . -# -# https://saref.etsi.org/core/isAbout - . - "A relationship identifying what an entity, such as a profile, is about"@en . - "isAbout"@en . -# -# https://saref.etsi.org/core/isAccomplishedBy - . - . - "A relationship identifying an entity (e.g., a device) that can accomplish a task."@en . - "is accomplished by"@en . -# -# https://saref.etsi.org/core/isCommandOf - . - . - . - "A relationship between a command and a function."@en . - "is command of"@en . -# -# https://saref.etsi.org/core/isControlledByDevice - . - . - . - "A relationship specifying the devices that can control a certain property"@en . - "is controlled by device"@en . -# -# https://saref.etsi.org/core/isMeasuredByDevice - . - . - . - "A relationship specifying the devices that can measure a certain property"@en . - "is measured by device"@en . -# -# https://saref.etsi.org/core/isMeasuredIn - . - . - . - "A relationship identifying the unit of measure used for a certain entity."@en . - "is measured in"@en . -# -# https://saref.etsi.org/core/isMeasurementOf - . - . - . - "A relationship between a measurement and the feature of interest whose quality was measured"@en . - "isMeasurementOf"@en . -# -# https://saref.etsi.org/core/isOfferedBy - . - . - . - . - "A relationship between a service and a device that offers the service"@en . - "is offered by"@en . -# -# https://saref.etsi.org/core/isPropertyOf - . - . - . - "A relationship between a property and the feature of interest it belongs to"@en . - "is property of"@en . -# -# https://saref.etsi.org/core/isUsedFor - . - "A relationship specifying the commodity for which a device is used for"@en . - "is used for"@en . -# -# https://saref.etsi.org/core/makesMeasurement - . - . - . - . - "A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates."@en . - "makes measurement"@en . -# -# https://saref.etsi.org/core/measurementMadeBy - . - . - . - "A relation between a measurement and the device that made it."@en . - "measurement made by"@en . -# -# https://saref.etsi.org/core/measuresProperty - . - . - . - "A relationship specifying the property that can be measured by a certain device"@en . - "measures property"@en . -# -# https://saref.etsi.org/core/offers - . - . - . - "A relationship between a device and a service"@en . - "offers"@en . -# -# https://saref.etsi.org/core/relatesToMeasurement - . - . - . - . - "A relationship between a property and the measurements it relates to"@en . - "relates to measurement"@en . -# -# https://saref.etsi.org/core/relatesToProperty - . - . - . - "A relationship between a measurement and the property it relates to"@en . - "relates to property"@en . -# -# https://saref.etsi.org/core/represents - . - . - . - "A relationship between a service and a function."@en . - "represents"@en . -# -# -# -# ################################################################# -# # -# # Data properties -# # -# ################################################################# -# -# -# https://saref.etsi.org/core/hasDescription - . - "A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en . - "DEPRECATED: The use of rdfs:comment is recommended instead."@en . - "has description"@en . - "true"^^ . -# -# https://saref.etsi.org/core/hasManufacturer - . - "A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en . - "has manufacturer"@en . -# -# https://saref.etsi.org/core/hasModel - . - "A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en . - "has model"@en . -# -# https://saref.etsi.org/core/hasTimestamp - . - "A relationship stating the timestamp of an entity (e.g. a measurement)."@en . - "has timestamp"@en . -# -# https://saref.etsi.org/core/hasValue - . - "A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes."@en . - "has value"@en . -# -# -# -# ################################################################# -# # -# # Classes -# # -# ################################################################# -# -# -# https://saref.etsi.org/core/ActuatingFunction - . - . - "A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off)"@en . - "Actuating function"@en . -# -# https://saref.etsi.org/core/Actuator - . - . - _:genid1 . -_:genid1 . -_:genid1 . -_:genid1 . - "A device responsible for moving or controlling a mechanism or system by performing an actuating function"@en . - "Actuator"@en . -# -# https://saref.etsi.org/core/Appliance - . - . - "An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking"@en . - "Appliance"@en . -# -# https://saref.etsi.org/core/CloseCommand - . - . - _:genid2 . -_:genid2 . -_:genid2 . -_:genid2 . - _:genid3 . -_:genid3 . -_:genid3 . -_:genid3 . - . - "A type of command"@en . - "Close command"@en . -# -# https://saref.etsi.org/core/CloseState - . - . - "The state of a device that is CLOSE"@en . - "Close state"@en . -# -# https://saref.etsi.org/core/Coal - . - . - "A type of commodity"@en . - "Coal"@en . -# -# https://saref.etsi.org/core/Command - . - _:genid4 . -_:genid4 . -_:genid4 . -_:genid4 . - _:genid5 . -_:genid5 . -_:genid5 . -_:genid5 "1"^^ . -_:genid5 . - "A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended."@en . - "Command"@en . -# -# https://saref.etsi.org/core/Commodity - . - "A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. "@en . - "Commodity"@en . -# -# https://saref.etsi.org/core/Currency - . - . - "The class of units of measure for price"@en . - "Currency"@en . -# -# https://saref.etsi.org/core/Device - . - _:genid6 . -_:genid6 . -_:genid6 . -_:genid6 . - _:genid7 . -_:genid7 . -_:genid7 . -_:genid7 . - _:genid8 . -_:genid8 . -_:genid8 . -_:genid8 . - _:genid9 . -_:genid9 . -_:genid9 . -_:genid9 . - _:genid10 . -_:genid10 . -_:genid10 . -_:genid10 . - _:genid11 . -_:genid11 . -_:genid11 . -_:genid11 . - _:genid12 . -_:genid12 . -_:genid12 . -_:genid12 . - _:genid13 . -_:genid13 . -_:genid13 . -_:genid13 . - _:genid14 . -_:genid14 . -_:genid14 . -_:genid14 "1"^^ . -_:genid14 . - _:genid15 . -_:genid15 . -_:genid15 . -_:genid15 "1"^^ . -_:genid15 . - _:genid16 . -_:genid16 . -_:genid16 . -_:genid16 "1"^^ . - _:genid17 . -_:genid17 . -_:genid17 . -_:genid17 "1"^^ . - "A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function."@en . - "Device"@en . -# -# https://saref.etsi.org/core/DoorSwitch - . - . - _:genid18 . -_:genid18 . -_:genid18 . -_:genid18 . - _:genid19 . -_:genid19 . -_:genid19 . -_:genid19 . - "A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety."@en . - "Door switch"@en . -# -# https://saref.etsi.org/core/Electricity - . - . - "A type of commodity"@en . - "Electricity"@en . -# -# https://saref.etsi.org/core/Energy - . - . - "A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. "@en . - "Energy"@en . -# -# https://saref.etsi.org/core/EnergyUnit - . - . - "The unit of measure for energy"@en . - "Energy unit"@en . -# -# https://saref.etsi.org/core/EventFunction - . - . - _:genid20 . -_:genid20 . -_:genid20 . -_:genid20 "1"^^ . -_:genid20 . - "A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved."@en . - "Event function"@en . -# -# https://saref.etsi.org/core/FeatureOfInterest - . - _:genid21 . -_:genid21 . -_:genid21 . -_:genid21 . - _:genid22 . -_:genid22 . -_:genid22 . -_:genid22 . - "A feature of interest represents any real world entity from which a property is measured."@en . - "Feature of interest"@en . -# -# https://saref.etsi.org/core/Function - . - _:genid23 . -_:genid23 . -_:genid23 . -_:genid23 "1"^^ . -_:genid23 . - "The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. "@en . - "Function"@en . -# -# https://saref.etsi.org/core/Gas - . - . - "A type of commodity"@en . - "Gas"@en . -# -# https://saref.etsi.org/core/GetCommand - . - . - "A type of command"@en . - "Get command"@en . -# -# https://saref.etsi.org/core/GetCurrentMeterValueCommand - . - . - _:genid24 . -_:genid24 . -_:genid24 . -_:genid24 . - "A type of get command"@en . - "Get current meter value command"@en . -# -# https://saref.etsi.org/core/GetMeterDataCommand - . - . - _:genid25 . -_:genid25 . -_:genid25 . -_:genid25 . - "A type of get command"@en . - "Get meter data command"@en . -# -# https://saref.etsi.org/core/GetMeterHistoryCommand - . - . - _:genid26 . -_:genid26 . -_:genid26 . -_:genid26 . - "A type of get command"@en . - "Get meter history command"@en . -# -# https://saref.etsi.org/core/GetSensingDataCommand - . - . - _:genid27 . -_:genid27 . -_:genid27 . -_:genid27 . - "A type of get command"@en . - "Get sensing data command"@en . -# -# https://saref.etsi.org/core/HVAC - . - . - "Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort."@en . - "HVAC"@en . -# -# https://saref.etsi.org/core/Humidity - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit"@en . - "Humidity"@en . -# -# https://saref.etsi.org/core/IlluminanceUnit - . - . - "The unit of measure for light"@en . - "Illuminance unit"@en . -# -# https://saref.etsi.org/core/LevelControlFunction - . - . - "An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. "@en . - "Level control function"@en . -# -# https://saref.etsi.org/core/Light - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux)"@en . - "Light"@en . -# -# https://saref.etsi.org/core/LightSwitch - . - . - _:genid28 . -_:genid28 . -_:genid28 . -_:genid28 . - _:genid29 . -_:genid29 . -_:genid29 . -_:genid29 . - _:genid30 . -_:genid30 . -_:genid30 . -_:genid30 . - _:genid31 . -_:genid31 . -_:genid31 . -_:genid31 . - "A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting."@en . - "Light switch"@en . -# -# https://saref.etsi.org/core/Measurement - . - _:genid32 . -_:genid32 . -_:genid32 . -_:genid32 . - _:genid33 . -_:genid33 . -_:genid33 . -_:genid33 . - _:genid34 . -_:genid34 . -_:genid34 . -_:genid34 . - _:genid35 . -_:genid35 . -_:genid35 . -_:genid35 "1"^^ . -_:genid35 . - _:genid36 . -_:genid36 . -_:genid36 . -_:genid36 "1"^^ . -_:genid36 . - _:genid37 . -_:genid37 . -_:genid37 . -_:genid37 . - _:genid38 . -_:genid38 . -_:genid38 . -_:genid38 "1"^^ . - "Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement."@en . - "Measurement"@en . -# -# https://saref.etsi.org/core/Meter - . - . - _:genid39 . -_:genid39 . -_:genid39 . -_:genid39 . - "A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction."@en . - "Meter"@en . -# -# https://saref.etsi.org/core/MeteringFunction - . - . - _:genid40 . -_:genid40 . -_:genid40 . -_:genid40 . - _:genid41 . -_:genid41 . -_:genid41 . -_:genid41 _:genid42 . -_:genid42 . -_:genid42 _:genid44 . -_:genid44 . -_:genid44 . -_:genid44 _:genid43 . -_:genid43 . -_:genid43 . -_:genid43 . - "A function that allows to get data from a meter, such as current meter reading or instantaneous demand"@en . - "Metering function"@en . -# -# https://saref.etsi.org/core/Motion - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion"@en . - "Motion"@en . -# -# https://saref.etsi.org/core/MultiLevelState - . - . - "A type of state"@en . - "Multi level state"@en . -# -# https://saref.etsi.org/core/NotifyCommand - . - . - _:genid45 . -_:genid45 . -_:genid45 . -_:genid45 . - "A type of command"@en . - "Notify command"@en . -# -# https://saref.etsi.org/core/Occupancy - . - . - "A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy"@en . - "Occupancy"@en . -# -# https://saref.etsi.org/core/OffCommand - . - . - _:genid46 . -_:genid46 . -_:genid46 . -_:genid46 . - _:genid47 . -_:genid47 . -_:genid47 . -_:genid47 . - . - "A type of command"@en . - "Off command"@en . -# -# https://saref.etsi.org/core/OffState - . - . - "The state of a device that is Off"@en . - "Off state"@en . -# -# https://saref.etsi.org/core/OnCommand - . - . - _:genid48 . -_:genid48 . -_:genid48 . -_:genid48 . - _:genid49 . -_:genid49 . -_:genid49 . -_:genid49 . - "A type of command"@en . - "On command"@en . -# -# https://saref.etsi.org/core/OnOffFunction - . - . - "An actuating function that allows to switch on and off an actuator"@en . - "On off function"@en . -# -# https://saref.etsi.org/core/OnOffState - . - . - "A type of state"@en . - "On off state"@en . -# -# https://saref.etsi.org/core/OnState - . - . - "The state of a device that is On"@en . - "On state"@en . -# -# https://saref.etsi.org/core/OpenCloseFunction - . - . - "An actuating function that allows to open and close a device"@en . - "Open close function"@en . -# -# https://saref.etsi.org/core/OpenCloseState - . - . - "A type of state"@en . - "Open close state"@en . -# -# https://saref.etsi.org/core/OpenCommand - . - . - _:genid50 . -_:genid50 . -_:genid50 . -_:genid50 . - _:genid51 . -_:genid51 . -_:genid51 . -_:genid51 . - "A type of command"@en . - "Open command"@en . -# -# https://saref.etsi.org/core/OpenState - . - . - "The state of a device that is OPEN "@en . - "Open state"@en . -# -# https://saref.etsi.org/core/PauseCommand - . - . - "A type of command"@en . - "Pause command"@en . -# -# https://saref.etsi.org/core/Power - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined."@en . - "Power"@en . -# -# https://saref.etsi.org/core/PowerUnit - . - . - "The unit of measure for power"@en . - "Power unit"@en . -# -# https://saref.etsi.org/core/Pressure - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal)"@en . - "Pressure"@en . -# -# https://saref.etsi.org/core/PressureUnit - . - . - "The unit of measure for pressure"@en . - "Pressure unit"@en . -# -# https://saref.etsi.org/core/Price - . - . - "A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency"@en . - "Price"@en . -# -# https://saref.etsi.org/core/Profile - . - _:genid52 . -_:genid52 . -_:genid52 . -_:genid52 . - _:genid53 . -_:genid53 . -_:genid53 . -_:genid53 . - _:genid54 . -_:genid54 . -_:genid54 . -_:genid54 . - _:genid55 . -_:genid55 . -_:genid55 . -_:genid55 _:genid56 . -_:genid56 . -_:genid56 _:genid58 . -_:genid58 . -_:genid58 . -_:genid58 _:genid57 . -_:genid57 . -_:genid57 . -_:genid57 . - "A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located."@en . - "Profile"@en . -# -# https://saref.etsi.org/core/Property - . - _:genid59 . -_:genid59 . -_:genid59 . -_:genid59 . - _:genid60 . -_:genid60 . -_:genid60 . -_:genid60 . - _:genid61 . -_:genid61 . -_:genid61 . -_:genid61 . - _:genid62 . -_:genid62 . -_:genid62 . -_:genid62 . - "A quality of a feature of interest that can be measured; an aspect of a feature of interest that is intrinsic to and cannot exist without the feature"@en . - "Property"@en . -# -# https://saref.etsi.org/core/SensingFunction - . - . - _:genid63 . -_:genid63 . -_:genid63 . -_:genid63 . - _:genid64 . -_:genid64 . -_:genid64 . -_:genid64 . - "A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy)"@en . - "Sensing function"@en . -# -# https://saref.etsi.org/core/Sensor - . - . - _:genid65 . -_:genid65 . -_:genid65 . -_:genid65 . - "A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction."@en . - "Sensor"@en . -# -# https://saref.etsi.org/core/Service - . - _:genid66 . -_:genid66 . -_:genid66 . -_:genid66 "1"^^ . -_:genid66 . - _:genid67 . -_:genid67 . -_:genid67 . -_:genid67 "1"^^ . -_:genid67 . - "A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented."@en . - "Service"@en . -# -# https://saref.etsi.org/core/SetAbsoluteLevelCommand - . - . - "A type of set level command"@en . - "Set absolute level command"@en . -# -# https://saref.etsi.org/core/SetLevelCommand - . - . - _:genid68 . -_:genid68 . -_:genid68 . -_:genid68 . - _:genid69 . -_:genid69 . -_:genid69 . -_:genid69 . - "A type of command"@en . - "Set level command"@en . -# -# https://saref.etsi.org/core/SetRelativeLevelCommand - . - . - "A type of set level command"@en . - "Set relative level command"@en . -# -# https://saref.etsi.org/core/Smoke - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke"@en . - "Smoke"@en . -# -# https://saref.etsi.org/core/SmokeSensor - . - . - _:genid70 . -_:genid70 . -_:genid70 . -_:genid70 . - _:genid71 . -_:genid71 . -_:genid71 . -_:genid71 . - _:genid72 . -_:genid72 . -_:genid72 . -_:genid72 . - "A sensor that performs the saref:SensingFunction and the saref:EventFunction, and is used for the purpose of sensing a property of type saref:Smoke. A saref:SmokeSensor is typically used to saref:accomplish saref:Safety."@en . - "Smoke sensor"@en . -# -# https://saref.etsi.org/core/StartCommand - . - . - _:genid73 . -_:genid73 . -_:genid73 . -_:genid73 . - _:genid74 . -_:genid74 . -_:genid74 . -_:genid74 . - . - "A type of command"@en . - "Start command"@en . -# -# https://saref.etsi.org/core/StartState - . - . - "The state of a device that is STARTED"@en . - "Start state"@en . -# -# https://saref.etsi.org/core/StartStopFunction - . - . - "An actuating function that allows to start and stop a device"@en . - "Start stop function"@en . -# -# https://saref.etsi.org/core/StartStopState - . - . - "A type of state"@en . - "Start stop state"@en . -# -# https://saref.etsi.org/core/State - . - "The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended."@en . - "State"@en . -# -# https://saref.etsi.org/core/StepDownCommand - . - . - _:genid75 . -_:genid75 . -_:genid75 . -_:genid75 . - _:genid76 . -_:genid76 . -_:genid76 . -_:genid76 . - . - "A type of command"@en . - "Step down command"@en . -# -# https://saref.etsi.org/core/StepUpCommand - . - . - _:genid77 . -_:genid77 . -_:genid77 . -_:genid77 . - _:genid78 . -_:genid78 . -_:genid78 . -_:genid78 . - "A type of command"@en . - "Step up command"@en . -# -# https://saref.etsi.org/core/StopCommand - . - . - _:genid79 . -_:genid79 . -_:genid79 . -_:genid79 . - _:genid80 . -_:genid80 . -_:genid80 . -_:genid80 . - "A type of command"@en . - "Stop command"@en . -# -# https://saref.etsi.org/core/StopState - . - . - "The state of a device that is STOPPED"@en . - "Stop state"@en . -# -# https://saref.etsi.org/core/Switch - . - . - "A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction"@en . - "Switch"@en . -# -# https://saref.etsi.org/core/SwitchOnService - . - . - _:genid81 . -_:genid81 . -_:genid81 . -_:genid81 . - _:genid82 . -_:genid82 . -_:genid82 . -_:genid82 . - "A type of service that represents an on/off function to the network"@en . - "Switch on service"@en . -# -# https://saref.etsi.org/core/Task - . - "The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. Tasks can be accomplished by devices (saref:isAccomplishedBy)."@en . - "Task"@en . -# -# https://saref.etsi.org/core/Temperature - . - . - "A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin)"@en . - "Temperature"@en . -# -# https://saref.etsi.org/core/TemperatureSensor - . - . - _:genid83 . -_:genid83 . -_:genid83 . -_:genid83 . - _:genid84 . -_:genid84 . -_:genid84 . -_:genid84 . - "A sensor that is used for the purpose of sensing a property of type saref:Temperature. A saref:TemperatureSensor is typically used to saref:accomplish saref:Comfort."@en . - "Temperature sensor"@en . -# -# https://saref.etsi.org/core/TemperatureUnit - . - . - "The unit of measure for temperature"@en . - "Temperature unit"@en . -# -# https://saref.etsi.org/core/Time - . - "A class that allows to specify the time concept."@en . - "Time"@en . -# -# https://saref.etsi.org/core/ToggleCommand - . - . - _:genid85 . -_:genid85 . -_:genid85 . -_:genid85 . - "A type of command"@en . - "Toggle command"@en . -# -# https://saref.etsi.org/core/UnitOfMeasure - . - "The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called \"watt\". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM)."@en . - "Unit of measure"@en . -# -# https://saref.etsi.org/core/Water - . - . - "A type of commodity"@en . - "Water"@en . -# -# -# -# ################################################################# -# # -# # Individuals -# # -# ################################################################# -# -# -# https://saref.etsi.org/core/Cleaning - . - . - "A type of task for which a device is designed"@en . - "Cleaning"@en . -# -# https://saref.etsi.org/core/Comfort - . - . - "A type of task for which a device is designed"@en . - "Comfort"@en . -# -# https://saref.etsi.org/core/Drying - . - . - "A type of task for which a device is designed"@en . - "Drying"@en . -# -# https://saref.etsi.org/core/EnergyEfficiency - . - . - "A type of task for which a device is designed"@en . - "EnergyEfficiency"@en . -# -# https://saref.etsi.org/core/Entertainment - . - . - "A type of task for which a device is designed"@en . - "Entertainment"@en . -# -# https://saref.etsi.org/core/Lighting - . - . - "A type of task for which a device is designed"@en . - "Lighting"@en . -# -# https://saref.etsi.org/core/MeterReading - . - . - "A type of task for which a device is designed"@en . - "Meter reading"@en . -# -# https://saref.etsi.org/core/Safety - . - . - "A type of task for which a device is designed"@en . - "Safety"@en . -# -# https://saref.etsi.org/core/Washing - . - . - "A type of task for which a device is designed"@en . - "Washing"@en . -# -# https://saref.etsi.org/core/WellBeing - . - . - "A type of task for which a device is designed"@en . - "WellBeing"@en . -# -# Generated by the OWL API (version 5.1.9) https://github.com/owlcs/owlapi/ diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.ttl b/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.ttl deleted file mode 100644 index e0a0bdb4f14d40b4f678410d73e5aa92e3edabcf..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.ttl +++ /dev/null @@ -1,1374 +0,0 @@ -@prefix : . -@prefix owl: . -@prefix rdf: . -@prefix xml: . -@prefix xsd: . -@prefix rdfs: . -@base . - - rdf:type owl:Ontology ; - , - , - , - ; - "The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market."@en ; - "2020-02-11"^^xsd:date ; - ; - ; - "SAREF: the Smart Applications REFerence ontology"@en ; - "saref" ; - "https://saref.etsi.org/core/"^^xsd:anyURI ; - rdfs:comment """Information about changes compared to version 1.1.1: - - The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings, including the reuse of the W3C� WGS84 geo positioning vocabulary. - - The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class. - - The information specific for energy efficiency has been moved to the SAREF4ENER extension. For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension. - - The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy). - - The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension, in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property). - - Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed. - - The saref:UnitOfMeasure subclasses use individuals from the OM ontology for unit of measures, but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used. - - The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes. - - The subclasses of saref:Task have been transormed in individuals. - - The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class.""" , - """Information about changes compared to version 2.1.1: - - Added the saref:FeatureOfInterest class and the properties used to relate it to saref:Measurement (saref:hasMeasurement and saref:isMeasurementOf) and to saref:Property (saref:hasProperty and saref:isPropertyOf). - - Added the saref:measurementMadeBy property as inverse of saref:makesMeasurement. - - The saref:relatesToProperty and saref:relatesToMeasurement properties are now inverse of each other. - - The range of saref:hasValue, which was defined as xsd:float, has been removed to support other datatypes for measurements. - - The range of datatype properties, which was defined as xsd:string, has been removed in order to support strings with language tags (rdf:langString). This affects saref:hasDescription, saref:hasManufacturer, saref:hasModel and saref:hasName, which now have implicitly a range of rdfs:Literal. - - The saref:hasName property has been removed and the use of rdfs:label is recommended. - - The saref:hasDescription property has been deprecated and the use of rdfs:comment is recommended. - - Too restrictive restrictions have been removed and in some cases the ontology documentation has been updated to reflect this: a saref:Command having at most one saref:hasDescription; a saref:Task being accomplished by at least one saref:Device; a saref:Device having a typical consumption of only energy or power; a saref:Commodity being measured in units of measure; restrictions on the values of saref:accomplishes that only covered specific use cases; universal restrictions on the saref:actsUpon property have been changed to existential ones; restrictions on the commands that a saref:Function may have, since there could be others not included in the defined enumerations; restrictive documentation of saref:EventFunction and saref:SmokeSensor. - - Bugs have been fixed: some devices (saref:DoorSwitch, saref:EnergyMeter, saref:LigthSwitch, saref:SmokeSensor, and saref:TemperatureSensor) were defined as subclass of a device and at the same time as consisting of such device; a saref:LightSwitch controls light and does not measure light, since it is an actuator; incorrect documentation of saref:OnState and saref:OffState. - - The saref:BuildingRelated, saref:EnergyRelated and saref:FunctionRelated classes have been removed, since the different extensions already classify the device types. - - The instances of the subclasses of saref:Command have been removed, since they represent examples. - - The instances of saref:UnitOfMeasure have been moved to examples. - - The classes related to the SAREF4ENER extension have been removed: saref:Generator, saref:Storage, saref:Load and saref:EnergyMeter. - - Some instances of saref:Device have been moved to examples: saref:WashingMachine, saref:LightingDevice, saref:MicroRenewable, saref:Multimedia, and saref:Network. - - Added domain and range axioms wherever the definition of a property unambiguously identifies the domain or the range of the property. - - The OWL Time ontology is not imported anymore. - - The documentation of some ontology terms has been updated for clarification. - - Language tags have been added to all labels and comments. -""" ; - owl:versionInfo "3.1.1" . - -################################################################# -# Annotation properties -################################################################# - -### http://purl.org/dc/terms/contributor - rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/description - rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/issued - rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/license - rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/publisher - rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/title - rdf:type owl:AnnotationProperty . - - -### http://purl.org/vocab/vann/preferredNamespacePrefix - rdf:type owl:AnnotationProperty . - - -### http://purl.org/vocab/vann/preferredNamespaceUri - rdf:type owl:AnnotationProperty . - - -################################################################# -# Object Properties -################################################################# - -### https://saref.etsi.org/core/accomplishes -:accomplishes rdf:type owl:ObjectProperty ; - owl:inverseOf :isAccomplishedBy ; - rdfs:range :Task ; - rdfs:comment "A relationship between a certain entity (e.g., a device) and the task it accomplishes"@en ; - rdfs:label "accomplishes"@en . - - -### https://saref.etsi.org/core/actsUpon -:actsUpon rdf:type owl:ObjectProperty ; - rdfs:domain :Command ; - rdfs:range :State ; - rdfs:comment "A relationship between a command and a state"@en ; - rdfs:label "acts upon"@en . - - -### https://saref.etsi.org/core/consistsOf -:consistsOf rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor)"@en ; - rdfs:label "consists of"@en . - - -### https://saref.etsi.org/core/controlsProperty -:controlsProperty rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :Property ; - rdfs:comment "A relationship specifying the property that can be controlled by a certain device"@en ; - rdfs:label "controls property"@en . - - -### https://saref.etsi.org/core/hasCommand -:hasCommand rdf:type owl:ObjectProperty ; - owl:inverseOf :isCommandOf ; - rdfs:domain :Function ; - rdfs:range :Command ; - rdfs:comment "A relationship between a function and a command"@en ; - rdfs:label "has command"@en . - - -### https://saref.etsi.org/core/hasFunction -:hasFunction rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :Function ; - rdfs:comment "A relationship identifying the function of a device"@en ; - rdfs:label "has function"@en . - - -### https://saref.etsi.org/core/hasMeasurement -:hasMeasurement rdf:type owl:ObjectProperty ; - owl:inverseOf :isMeasurementOf ; - rdfs:domain :FeatureOfInterest ; - rdfs:range :Measurement ; - rdfs:comment "A relationship between a feature of interest and a measurement about it"@en ; - rdfs:label "has measurement"@en . - - -### https://saref.etsi.org/core/hasMeterReading -:hasMeterReading rdf:type owl:ObjectProperty ; - rdfs:domain :MeteringFunction ; - rdfs:range :Measurement ; - rdfs:comment "A relationship between a metering function and the measurement of the reading"@en ; - rdfs:label "has meter reading"@en . - - -### https://saref.etsi.org/core/hasMeterReadingType -:hasMeterReadingType rdf:type owl:ObjectProperty ; - rdfs:domain :MeteringFunction ; - rdfs:range :Property ; - rdfs:comment "A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.)"@en ; - rdfs:label "has meter reading type"@en . - - -### https://saref.etsi.org/core/hasPrice -:hasPrice rdf:type owl:ObjectProperty ; - rdfs:range :Price ; - rdfs:comment "A relationship indentifying the price associated to an entity"@en ; - rdfs:label "has price"@en . - - -### https://saref.etsi.org/core/hasProfile -:hasProfile rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :Profile ; - rdfs:comment "A relationship associating a profile to a certain device"@en ; - rdfs:label "has profile"@en . - - -### https://saref.etsi.org/core/hasProperty -:hasProperty rdf:type owl:ObjectProperty ; - owl:inverseOf :isPropertyOf ; - rdfs:domain :FeatureOfInterest ; - rdfs:range :Property ; - rdfs:comment "A relationship between a feature of interest and a property of that feature"@en ; - rdfs:label "has property"@en . - - -### https://saref.etsi.org/core/hasSensingRange -:hasSensingRange rdf:type owl:ObjectProperty ; - rdfs:domain :SensingFunction ; - rdfs:range :Measurement ; - rdfs:comment "A relationship between a sensing function and a measurement identifying the range of a sensor detection"@en ; - rdfs:label "has sensing range"@en . - - -### https://saref.etsi.org/core/hasSensorType -:hasSensorType rdf:type owl:ObjectProperty ; - rdfs:domain :SensingFunction ; - rdfs:range :Property ; - rdfs:comment "A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) "@en ; - rdfs:label "has sensor type"@en . - - -### https://saref.etsi.org/core/hasState -:hasState rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :State ; - rdfs:comment "A relationship identifying the type of state of a device"@en ; - rdfs:label "has state"@en . - - -### https://saref.etsi.org/core/hasThresholdMeasurement -:hasThresholdMeasurement rdf:type owl:ObjectProperty ; - rdfs:domain :EventFunction ; - rdfs:range :Measurement ; - rdfs:comment "A relationship associated with an event function to notify that a certain threshold measurement has been exceeded"@en ; - rdfs:label "has threshold measurement"@en . - - -### https://saref.etsi.org/core/hasTime -:hasTime rdf:type owl:ObjectProperty ; - rdfs:range :Time ; - rdfs:comment "A relationship to associate time information to an entity"@en ; - rdfs:label "has time"@en . - - -### https://saref.etsi.org/core/hasTypicalConsumption -:hasTypicalConsumption rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship identifying the typical (energy or power) consumption of a device"@en ; - rdfs:label "has typical consumption"@en . - - -### https://saref.etsi.org/core/isAbout -:isAbout rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship identifying what an entity, such as a profile, is about"@en ; - rdfs:label "isAbout"@en . - - -### https://saref.etsi.org/core/isAccomplishedBy -:isAccomplishedBy rdf:type owl:ObjectProperty ; - rdfs:domain :Task ; - rdfs:comment "A relationship identifying an entity (e.g., a device) that can accomplish a task."@en ; - rdfs:label "is accomplished by"@en . - - -### https://saref.etsi.org/core/isCommandOf -:isCommandOf rdf:type owl:ObjectProperty ; - rdfs:domain :Command ; - rdfs:range :Function ; - rdfs:comment "A relationship between a command and a function."@en ; - rdfs:label "is command of"@en . - - -### https://saref.etsi.org/core/isControlledByDevice -:isControlledByDevice rdf:type owl:ObjectProperty ; - rdfs:domain :Property ; - rdfs:range :Device ; - rdfs:comment "A relationship specifying the devices that can control a certain property"@en ; - rdfs:label "is controlled by device"@en . - - -### https://saref.etsi.org/core/isMeasuredByDevice -:isMeasuredByDevice rdf:type owl:ObjectProperty ; - rdfs:domain :Property ; - rdfs:range :Device ; - rdfs:comment "A relationship specifying the devices that can measure a certain property"@en ; - rdfs:label "is measured by device"@en . - - -### https://saref.etsi.org/core/isMeasuredIn -:isMeasuredIn rdf:type owl:ObjectProperty ; - rdfs:domain :Measurement ; - rdfs:range :UnitOfMeasure ; - rdfs:comment "A relationship identifying the unit of measure used for a certain entity."@en ; - rdfs:label "is measured in"@en . - - -### https://saref.etsi.org/core/isMeasurementOf -:isMeasurementOf rdf:type owl:ObjectProperty ; - rdfs:domain :Measurement ; - rdfs:range :FeatureOfInterest ; - rdfs:comment "A relationship between a measurement and the feature of interest whose quality was measured"@en ; - rdfs:label "isMeasurementOf"@en . - - -### https://saref.etsi.org/core/isOfferedBy -:isOfferedBy rdf:type owl:ObjectProperty ; - owl:inverseOf :offers ; - rdfs:domain :Service ; - rdfs:range :Device ; - rdfs:comment "A relationship between a service and a device that offers the service"@en ; - rdfs:label "is offered by"@en . - - -### https://saref.etsi.org/core/isPropertyOf -:isPropertyOf rdf:type owl:ObjectProperty ; - rdfs:domain :Property ; - rdfs:range :FeatureOfInterest ; - rdfs:comment "A relationship between a property and the feature of interest it belongs to"@en ; - rdfs:label "is property of"@en . - - -### https://saref.etsi.org/core/isUsedFor -:isUsedFor rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship specifying the commodity for which a device is used for"@en ; - rdfs:label "is used for"@en . - - -### https://saref.etsi.org/core/makesMeasurement -:makesMeasurement rdf:type owl:ObjectProperty ; - owl:inverseOf :measurementMadeBy ; - rdfs:domain :Device ; - rdfs:range :Measurement ; - rdfs:comment "A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates."@en ; - rdfs:label "makes measurement"@en . - - -### https://saref.etsi.org/core/measurementMadeBy -:measurementMadeBy rdf:type owl:ObjectProperty ; - rdfs:domain :Measurement ; - rdfs:range :Device ; - rdfs:comment "A relation between a measurement and the device that made it."@en ; - rdfs:label "measurement made by"@en . - - -### https://saref.etsi.org/core/measuresProperty -:measuresProperty rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :Property ; - rdfs:comment "A relationship specifying the property that can be measured by a certain device"@en ; - rdfs:label "measures property"@en . - - -### https://saref.etsi.org/core/offers -:offers rdf:type owl:ObjectProperty ; - rdfs:domain :Device ; - rdfs:range :Service ; - rdfs:comment "A relationship between a device and a service"@en ; - rdfs:label "offers"@en . - - -### https://saref.etsi.org/core/relatesToMeasurement -:relatesToMeasurement rdf:type owl:ObjectProperty ; - owl:inverseOf :relatesToProperty ; - rdfs:domain :Property ; - rdfs:range :Measurement ; - rdfs:comment "A relationship between a property and the measurements it relates to"@en ; - rdfs:label "relates to measurement"@en . - - -### https://saref.etsi.org/core/relatesToProperty -:relatesToProperty rdf:type owl:ObjectProperty ; - rdfs:domain :Measurement ; - rdfs:range :Property ; - rdfs:comment "A relationship between a measurement and the property it relates to"@en ; - rdfs:label "relates to property"@en . - - -### https://saref.etsi.org/core/represents -:represents rdf:type owl:ObjectProperty ; - rdfs:domain :Service ; - rdfs:range :Function ; - rdfs:comment "A relationship between a service and a function."@en ; - rdfs:label "represents"@en . - - -################################################################# -# Data properties -################################################################# - -### https://saref.etsi.org/core/hasDescription -:hasDescription rdf:type owl:DatatypeProperty ; - rdfs:comment "A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en , - "DEPRECATED: The use of rdfs:comment is recommended instead."@en ; - rdfs:label "has description"@en ; - owl:deprecated "true"^^xsd:boolean . - - -### https://saref.etsi.org/core/hasManufacturer -:hasManufacturer rdf:type owl:DatatypeProperty ; - rdfs:comment "A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en ; - rdfs:label "has manufacturer"@en . - - -### https://saref.etsi.org/core/hasModel -:hasModel rdf:type owl:DatatypeProperty ; - rdfs:comment "A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en ; - rdfs:label "has model"@en . - - -### https://saref.etsi.org/core/hasTimestamp -:hasTimestamp rdf:type owl:DatatypeProperty ; - rdfs:comment "A relationship stating the timestamp of an entity (e.g. a measurement)."@en ; - rdfs:label "has timestamp"@en . - - -### https://saref.etsi.org/core/hasValue -:hasValue rdf:type owl:DatatypeProperty ; - rdfs:comment "A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes."@en ; - rdfs:label "has value"@en . - - -################################################################# -# Classes -################################################################# - -### https://saref.etsi.org/core/ActuatingFunction -:ActuatingFunction rdf:type owl:Class ; - rdfs:subClassOf :Function ; - rdfs:comment "A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off)"@en ; - rdfs:label "Actuating function"@en . - - -### https://saref.etsi.org/core/Actuator -:Actuator rdf:type owl:Class ; - rdfs:subClassOf :Device , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :ActuatingFunction - ] ; - rdfs:comment "A device responsible for moving or controlling a mechanism or system by performing an actuating function"@en ; - rdfs:label "Actuator"@en . - - -### https://saref.etsi.org/core/Appliance -:Appliance rdf:type owl:Class ; - rdfs:subClassOf :Device ; - rdfs:comment "An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking"@en ; - rdfs:label "Appliance"@en . - - -### https://saref.etsi.org/core/CloseCommand -:CloseCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :OpenCloseState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :OpenCloseFunction - ] ; - owl:disjointWith :OpenCommand ; - rdfs:comment "A type of command"@en ; - rdfs:label "Close command"@en . - - -### https://saref.etsi.org/core/CloseState -:CloseState rdf:type owl:Class ; - rdfs:subClassOf :OpenCloseState ; - rdfs:comment "The state of a device that is CLOSE"@en ; - rdfs:label "Close state"@en . - - -### https://saref.etsi.org/core/Coal -:Coal rdf:type owl:Class ; - rdfs:subClassOf :Commodity ; - rdfs:comment "A type of commodity"@en ; - rdfs:label "Coal"@en . - - -### https://saref.etsi.org/core/Command -:Command rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:allValuesFrom :State - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Function - ] ; - rdfs:comment "A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended."@en ; - rdfs:label "Command"@en . - - -### https://saref.etsi.org/core/Commodity -:Commodity rdf:type owl:Class ; - rdfs:comment "A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. "@en ; - rdfs:label "Commodity"@en . - - -### https://saref.etsi.org/core/Currency -:Currency rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The class of units of measure for price"@en ; - rdfs:label "Currency"@en . - - -### https://saref.etsi.org/core/Device -:Device rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :consistsOf ; - owl:allValuesFrom :Device - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :controlsProperty ; - owl:allValuesFrom :Property - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasProfile ; - owl:allValuesFrom :Profile - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasState ; - owl:allValuesFrom :State - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isUsedFor ; - owl:allValuesFrom :Commodity - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :makesMeasurement ; - owl:allValuesFrom :Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :measuresProperty ; - owl:allValuesFrom :Property - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :offers ; - owl:allValuesFrom :Service - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :accomplishes ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Task - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Function - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasManufacturer ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasModel ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger - ] ; - rdfs:comment "A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function."@en ; - rdfs:label "Device"@en . - - -### https://saref.etsi.org/core/DoorSwitch -:DoorSwitch rdf:type owl:Class ; - rdfs:subClassOf :Switch , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :OpenCloseFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasState ; - owl:someValuesFrom :OpenCloseState - ] ; - rdfs:comment "A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety."@en ; - rdfs:label "Door switch"@en . - - -### https://saref.etsi.org/core/Electricity -:Electricity rdf:type owl:Class ; - rdfs:subClassOf :Commodity ; - rdfs:comment "A type of commodity"@en ; - rdfs:label "Electricity"@en . - - -### https://saref.etsi.org/core/Energy -:Energy rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. "@en ; - rdfs:label "Energy"@en . - - -### https://saref.etsi.org/core/EnergyUnit -:EnergyUnit rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The unit of measure for energy"@en ; - rdfs:label "Energy unit"@en . - - -### https://saref.etsi.org/core/EventFunction -:EventFunction rdf:type owl:Class ; - rdfs:subClassOf :Function , - [ rdf:type owl:Restriction ; - owl:onProperty :hasThresholdMeasurement ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Measurement - ] ; - rdfs:comment "A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved."@en ; - rdfs:label "Event function"@en . - - -### https://saref.etsi.org/core/FeatureOfInterest -:FeatureOfInterest rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :hasMeasurement ; - owl:allValuesFrom :Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasProperty ; - owl:allValuesFrom :Property - ] ; - rdfs:comment "A feature of interest represents any real world entity from which a property is measured."@en ; - rdfs:label "Feature of interest"@en . - - -### https://saref.etsi.org/core/Function -:Function rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :hasCommand ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Command - ] ; - rdfs:comment "The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. "@en ; - rdfs:label "Function"@en . - - -### https://saref.etsi.org/core/Gas -:Gas rdf:type owl:Class ; - rdfs:subClassOf :Commodity ; - rdfs:comment "A type of commodity"@en ; - rdfs:label "Gas"@en . - - -### https://saref.etsi.org/core/GetCommand -:GetCommand rdf:type owl:Class ; - rdfs:subClassOf :Command ; - rdfs:comment "A type of command"@en ; - rdfs:label "Get command"@en . - - -### https://saref.etsi.org/core/GetCurrentMeterValueCommand -:GetCurrentMeterValueCommand rdf:type owl:Class ; - rdfs:subClassOf :GetCommand , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :MeteringFunction - ] ; - rdfs:comment "A type of get command"@en ; - rdfs:label "Get current meter value command"@en . - - -### https://saref.etsi.org/core/GetMeterDataCommand -:GetMeterDataCommand rdf:type owl:Class ; - rdfs:subClassOf :GetCommand , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :MeteringFunction - ] ; - rdfs:comment "A type of get command"@en ; - rdfs:label "Get meter data command"@en . - - -### https://saref.etsi.org/core/GetMeterHistoryCommand -:GetMeterHistoryCommand rdf:type owl:Class ; - rdfs:subClassOf :GetCommand , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :MeteringFunction - ] ; - rdfs:comment "A type of get command"@en ; - rdfs:label "Get meter history command"@en . - - -### https://saref.etsi.org/core/GetSensingDataCommand -:GetSensingDataCommand rdf:type owl:Class ; - rdfs:subClassOf :GetCommand , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :SensingFunction - ] ; - rdfs:comment "A type of get command"@en ; - rdfs:label "Get sensing data command"@en . - - -### https://saref.etsi.org/core/HVAC -:HVAC rdf:type owl:Class ; - rdfs:subClassOf :Device ; - rdfs:comment "Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort."@en ; - rdfs:label "HVAC"@en . - - -### https://saref.etsi.org/core/Humidity -:Humidity rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit"@en ; - rdfs:label "Humidity"@en . - - -### https://saref.etsi.org/core/IlluminanceUnit -:IlluminanceUnit rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The unit of measure for light"@en ; - rdfs:label "Illuminance unit"@en . - - -### https://saref.etsi.org/core/LevelControlFunction -:LevelControlFunction rdf:type owl:Class ; - rdfs:subClassOf :ActuatingFunction ; - rdfs:comment "An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. "@en ; - rdfs:label "Level control function"@en . - - -### https://saref.etsi.org/core/Light -:Light rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux)"@en ; - rdfs:label "Light"@en . - - -### https://saref.etsi.org/core/LightSwitch -:LightSwitch rdf:type owl:Class ; - rdfs:subClassOf :Switch , - [ rdf:type owl:Restriction ; - owl:onProperty :controlsProperty ; - owl:someValuesFrom :Light - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :OnOffFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasState ; - owl:someValuesFrom :OnOffState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :offers ; - owl:someValuesFrom :SwitchOnService - ] ; - rdfs:comment "A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting."@en ; - rdfs:label "Light switch"@en . - - -### https://saref.etsi.org/core/Measurement -:Measurement rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :isMeasuredIn ; - owl:allValuesFrom :UnitOfMeasure - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isMeasurementOf ; - owl:allValuesFrom :FeatureOfInterest - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :relatesToProperty ; - owl:allValuesFrom :Property - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isMeasuredIn ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :UnitOfMeasure - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :relatesToProperty ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Property - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasTimestamp ; - owl:allValuesFrom xsd:dateTime - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasValue ; - owl:cardinality "1"^^xsd:nonNegativeInteger - ] ; - rdfs:comment "Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement."@en ; - rdfs:label "Measurement"@en . - - -### https://saref.etsi.org/core/Meter -:Meter rdf:type owl:Class ; - rdfs:subClassOf :Device , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :MeteringFunction - ] ; - rdfs:comment "A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction."@en ; - rdfs:label "Meter"@en . - - -### https://saref.etsi.org/core/MeteringFunction -:MeteringFunction rdf:type owl:Class ; - rdfs:subClassOf :Function , - [ rdf:type owl:Restriction ; - owl:onProperty :hasMeterReading ; - owl:allValuesFrom :Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasMeterReadingType ; - owl:allValuesFrom [ rdf:type owl:Class ; - owl:unionOf ( :Commodity - :Property - ) - ] - ] ; - rdfs:comment "A function that allows to get data from a meter, such as current meter reading or instantaneous demand"@en ; - rdfs:label "Metering function"@en . - - -### https://saref.etsi.org/core/Motion -:Motion rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion"@en ; - rdfs:label "Motion"@en . - - -### https://saref.etsi.org/core/MultiLevelState -:MultiLevelState rdf:type owl:Class ; - rdfs:subClassOf :State ; - rdfs:comment "A type of state"@en ; - rdfs:label "Multi level state"@en . - - -### https://saref.etsi.org/core/NotifyCommand -:NotifyCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :EventFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Notify command"@en . - - -### https://saref.etsi.org/core/Occupancy -:Occupancy rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy"@en ; - rdfs:label "Occupancy"@en . - - -### https://saref.etsi.org/core/OffCommand -:OffCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :OnOffState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :OnOffFunction - ] ; - owl:disjointWith :OnCommand ; - rdfs:comment "A type of command"@en ; - rdfs:label "Off command"@en . - - -### https://saref.etsi.org/core/OffState -:OffState rdf:type owl:Class ; - rdfs:subClassOf :OnOffState ; - rdfs:comment "The state of a device that is Off"@en ; - rdfs:label "Off state"@en . - - -### https://saref.etsi.org/core/OnCommand -:OnCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :OnOffState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :OnOffFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "On command"@en . - - -### https://saref.etsi.org/core/OnOffFunction -:OnOffFunction rdf:type owl:Class ; - rdfs:subClassOf :ActuatingFunction ; - rdfs:comment "An actuating function that allows to switch on and off an actuator"@en ; - rdfs:label "On off function"@en . - - -### https://saref.etsi.org/core/OnOffState -:OnOffState rdf:type owl:Class ; - rdfs:subClassOf :State ; - rdfs:comment "A type of state"@en ; - rdfs:label "On off state"@en . - - -### https://saref.etsi.org/core/OnState -:OnState rdf:type owl:Class ; - rdfs:subClassOf :OnOffState ; - rdfs:comment "The state of a device that is On"@en ; - rdfs:label "On state"@en . - - -### https://saref.etsi.org/core/OpenCloseFunction -:OpenCloseFunction rdf:type owl:Class ; - rdfs:subClassOf :ActuatingFunction ; - rdfs:comment "An actuating function that allows to open and close a device"@en ; - rdfs:label "Open close function"@en . - - -### https://saref.etsi.org/core/OpenCloseState -:OpenCloseState rdf:type owl:Class ; - rdfs:subClassOf :State ; - rdfs:comment "A type of state"@en ; - rdfs:label "Open close state"@en . - - -### https://saref.etsi.org/core/OpenCommand -:OpenCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :OpenCloseState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :OpenCloseFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Open command"@en . - - -### https://saref.etsi.org/core/OpenState -:OpenState rdf:type owl:Class ; - rdfs:subClassOf :OpenCloseState ; - rdfs:comment "The state of a device that is OPEN "@en ; - rdfs:label "Open state"@en . - - -### https://saref.etsi.org/core/PauseCommand -:PauseCommand rdf:type owl:Class ; - rdfs:subClassOf :Command ; - rdfs:comment "A type of command"@en ; - rdfs:label "Pause command"@en . - - -### https://saref.etsi.org/core/Power -:Power rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined."@en ; - rdfs:label "Power"@en . - - -### https://saref.etsi.org/core/PowerUnit -:PowerUnit rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The unit of measure for power"@en ; - rdfs:label "Power unit"@en . - - -### https://saref.etsi.org/core/Pressure -:Pressure rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal)"@en ; - rdfs:label "Pressure"@en . - - -### https://saref.etsi.org/core/PressureUnit -:PressureUnit rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The unit of measure for pressure"@en ; - rdfs:label "Pressure unit"@en . - - -### https://saref.etsi.org/core/Price -:Price rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency"@en ; - rdfs:label "Price"@en . - - -### https://saref.etsi.org/core/Profile -:Profile rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :consistsOf ; - owl:allValuesFrom :Profile - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasPrice ; - owl:allValuesFrom :Price - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasTime ; - owl:allValuesFrom :Time - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isAbout ; - owl:allValuesFrom [ rdf:type owl:Class ; - owl:unionOf ( :Commodity - :Property - ) - ] - ] ; - rdfs:comment "A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located."@en ; - rdfs:label "Profile"@en . - - -### https://saref.etsi.org/core/Property -:Property rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :isControlledByDevice ; - owl:allValuesFrom :Device - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isMeasuredByDevice ; - owl:allValuesFrom :Device - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isPropertyOf ; - owl:allValuesFrom :FeatureOfInterest - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :relatesToMeasurement ; - owl:allValuesFrom :Measurement - ] ; - rdfs:comment "A quality of a feature of interest that can be measured; an aspect of a feature of interest that is intrinsic to and cannot exist without the feature"@en ; - rdfs:label "Property"@en . - - -### https://saref.etsi.org/core/SensingFunction -:SensingFunction rdf:type owl:Class ; - rdfs:subClassOf :Function , - [ rdf:type owl:Restriction ; - owl:onProperty :hasSensingRange ; - owl:someValuesFrom :Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasSensorType ; - owl:allValuesFrom :Property - ] ; - rdfs:comment "A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy)"@en ; - rdfs:label "Sensing function"@en . - - -### https://saref.etsi.org/core/Sensor -:Sensor rdf:type owl:Class ; - rdfs:subClassOf :Device , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :SensingFunction - ] ; - rdfs:comment "A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction."@en ; - rdfs:label "Sensor"@en . - - -### https://saref.etsi.org/core/Service -:Service rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty :isOfferedBy ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Device - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :represents ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass :Function - ] ; - rdfs:comment "A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented."@en ; - rdfs:label "Service"@en . - - -### https://saref.etsi.org/core/SetAbsoluteLevelCommand -:SetAbsoluteLevelCommand rdf:type owl:Class ; - rdfs:subClassOf :SetLevelCommand ; - rdfs:comment "A type of set level command"@en ; - rdfs:label "Set absolute level command"@en . - - -### https://saref.etsi.org/core/SetLevelCommand -:SetLevelCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :MultiLevelState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :LevelControlFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Set level command"@en . - - -### https://saref.etsi.org/core/SetRelativeLevelCommand -:SetRelativeLevelCommand rdf:type owl:Class ; - rdfs:subClassOf :SetLevelCommand ; - rdfs:comment "A type of set level command"@en ; - rdfs:label "Set relative level command"@en . - - -### https://saref.etsi.org/core/Smoke -:Smoke rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke"@en ; - rdfs:label "Smoke"@en . - - -### https://saref.etsi.org/core/SmokeSensor -:SmokeSensor rdf:type owl:Class ; - rdfs:subClassOf :Sensor , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :EventFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :SensingFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :measuresProperty ; - owl:someValuesFrom :Smoke - ] ; - rdfs:comment "A sensor that performs the saref:SensingFunction and the saref:EventFunction, and is used for the purpose of sensing a property of type saref:Smoke. A saref:SmokeSensor is typically used to saref:accomplish saref:Safety."@en ; - rdfs:label "Smoke sensor"@en . - - -### https://saref.etsi.org/core/StartCommand -:StartCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :StartStopState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :StartStopFunction - ] ; - owl:disjointWith :StopCommand ; - rdfs:comment "A type of command"@en ; - rdfs:label "Start command"@en . - - -### https://saref.etsi.org/core/StartState -:StartState rdf:type owl:Class ; - rdfs:subClassOf :StartStopState ; - rdfs:comment "The state of a device that is STARTED"@en ; - rdfs:label "Start state"@en . - - -### https://saref.etsi.org/core/StartStopFunction -:StartStopFunction rdf:type owl:Class ; - rdfs:subClassOf :ActuatingFunction ; - rdfs:comment "An actuating function that allows to start and stop a device"@en ; - rdfs:label "Start stop function"@en . - - -### https://saref.etsi.org/core/StartStopState -:StartStopState rdf:type owl:Class ; - rdfs:subClassOf :State ; - rdfs:comment "A type of state"@en ; - rdfs:label "Start stop state"@en . - - -### https://saref.etsi.org/core/State -:State rdf:type owl:Class ; - rdfs:comment "The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended."@en ; - rdfs:label "State"@en . - - -### https://saref.etsi.org/core/StepDownCommand -:StepDownCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :MultiLevelState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :LevelControlFunction - ] ; - owl:disjointWith :StepUpCommand ; - rdfs:comment "A type of command"@en ; - rdfs:label "Step down command"@en . - - -### https://saref.etsi.org/core/StepUpCommand -:StepUpCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :MultiLevelState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :LevelControlFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Step up command"@en . - - -### https://saref.etsi.org/core/StopCommand -:StopCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :actsUpon ; - owl:someValuesFrom :StartStopState - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :StartStopFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Stop command"@en . - - -### https://saref.etsi.org/core/StopState -:StopState rdf:type owl:Class ; - rdfs:subClassOf :StartStopState ; - rdfs:comment "The state of a device that is STOPPED"@en ; - rdfs:label "Stop state"@en . - - -### https://saref.etsi.org/core/Switch -:Switch rdf:type owl:Class ; - rdfs:subClassOf :Actuator ; - rdfs:comment "A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction"@en ; - rdfs:label "Switch"@en . - - -### https://saref.etsi.org/core/SwitchOnService -:SwitchOnService rdf:type owl:Class ; - rdfs:subClassOf :Service , - [ rdf:type owl:Restriction ; - owl:onProperty :isOfferedBy ; - owl:someValuesFrom :LightSwitch - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :represents ; - owl:someValuesFrom :OnOffFunction - ] ; - rdfs:comment "A type of service that represents an on/off function to the network"@en ; - rdfs:label "Switch on service"@en . - - -### https://saref.etsi.org/core/Task -:Task rdf:type owl:Class ; - rdfs:comment "The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. Tasks can be accomplished by devices (saref:isAccomplishedBy)."@en ; - rdfs:label "Task"@en . - - -### https://saref.etsi.org/core/Temperature -:Temperature rdf:type owl:Class ; - rdfs:subClassOf :Property ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin)"@en ; - rdfs:label "Temperature"@en . - - -### https://saref.etsi.org/core/TemperatureSensor -:TemperatureSensor rdf:type owl:Class ; - rdfs:subClassOf :Sensor , - [ rdf:type owl:Restriction ; - owl:onProperty :hasFunction ; - owl:someValuesFrom :SensingFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty :measuresProperty ; - owl:someValuesFrom :Temperature - ] ; - rdfs:comment "A sensor that is used for the purpose of sensing a property of type saref:Temperature. A saref:TemperatureSensor is typically used to saref:accomplish saref:Comfort."@en ; - rdfs:label "Temperature sensor"@en . - - -### https://saref.etsi.org/core/TemperatureUnit -:TemperatureUnit rdf:type owl:Class ; - rdfs:subClassOf :UnitOfMeasure ; - rdfs:comment "The unit of measure for temperature"@en ; - rdfs:label "Temperature unit"@en . - - -### https://saref.etsi.org/core/Time -:Time rdf:type owl:Class ; - rdfs:comment "A class that allows to specify the time concept."@en ; - rdfs:label "Time"@en . - - -### https://saref.etsi.org/core/ToggleCommand -:ToggleCommand rdf:type owl:Class ; - rdfs:subClassOf :Command , - [ rdf:type owl:Restriction ; - owl:onProperty :isCommandOf ; - owl:allValuesFrom :OnOffFunction - ] ; - rdfs:comment "A type of command"@en ; - rdfs:label "Toggle command"@en . - - -### https://saref.etsi.org/core/UnitOfMeasure -:UnitOfMeasure rdf:type owl:Class ; - rdfs:comment "The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called \"watt\". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM)."@en ; - rdfs:label "Unit of measure"@en . - - -### https://saref.etsi.org/core/Water -:Water rdf:type owl:Class ; - rdfs:subClassOf :Commodity ; - rdfs:comment "A type of commodity"@en ; - rdfs:label "Water"@en . - - -################################################################# -# Individuals -################################################################# - -### https://saref.etsi.org/core/Cleaning -:Cleaning rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Cleaning"@en . - - -### https://saref.etsi.org/core/Comfort -:Comfort rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Comfort"@en . - - -### https://saref.etsi.org/core/Drying -:Drying rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Drying"@en . - - -### https://saref.etsi.org/core/EnergyEfficiency -:EnergyEfficiency rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "EnergyEfficiency"@en . - - -### https://saref.etsi.org/core/Entertainment -:Entertainment rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Entertainment"@en . - - -### https://saref.etsi.org/core/Lighting -:Lighting rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Lighting"@en . - - -### https://saref.etsi.org/core/MeterReading -:MeterReading rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Meter reading"@en . - - -### https://saref.etsi.org/core/Safety -:Safety rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Safety"@en . - - -### https://saref.etsi.org/core/Washing -:Washing rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "Washing"@en . - - -### https://saref.etsi.org/core/WellBeing -:WellBeing rdf:type owl:NamedIndividual , - :Task ; - rdfs:comment "A type of task for which a device is designed"@en ; - rdfs:label "WellBeing"@en . - - -### Generated by the OWL API (version 5.1.9) https://github.com/owlcs/owlapi/ diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.xml b/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.xml deleted file mode 100644 index 4d257b5eeeef88a037a761b5376640504ca02350..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/core.xml +++ /dev/null @@ -1,2134 +0,0 @@ - - - - - - - - The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market. - 2020-02-11 - - - SAREF: the Smart Applications REFerence ontology - saref - https://saref.etsi.org/core/ - Information about changes compared to version 1.1.1: - - The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings, including the reuse of the W3C� WGS84 geo positioning vocabulary. - - The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class. - - The information specific for energy efficiency has been moved to the SAREF4ENER extension. For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension. - - The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy). - - The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension, in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property). - - Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed. - - The saref:UnitOfMeasure subclasses use individuals from the OM ontology for unit of measures, but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used. - - The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes. - - The subclasses of saref:Task have been transormed in individuals. - - The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class. - Information about changes compared to version 2.1.1: - - Added the saref:FeatureOfInterest class and the properties used to relate it to saref:Measurement (saref:hasMeasurement and saref:isMeasurementOf) and to saref:Property (saref:hasProperty and saref:isPropertyOf). - - Added the saref:measurementMadeBy property as inverse of saref:makesMeasurement. - - The saref:relatesToProperty and saref:relatesToMeasurement properties are now inverse of each other. - - The range of saref:hasValue, which was defined as xsd:float, has been removed to support other datatypes for measurements. - - The range of datatype properties, which was defined as xsd:string, has been removed in order to support strings with language tags (rdf:langString). This affects saref:hasDescription, saref:hasManufacturer, saref:hasModel and saref:hasName, which now have implicitly a range of rdfs:Literal. - - The saref:hasName property has been removed and the use of rdfs:label is recommended. - - The saref:hasDescription property has been deprecated and the use of rdfs:comment is recommended. - - Too restrictive restrictions have been removed and in some cases the ontology documentation has been updated to reflect this: a saref:Command having at most one saref:hasDescription; a saref:Task being accomplished by at least one saref:Device; a saref:Device having a typical consumption of only energy or power; a saref:Commodity being measured in units of measure; restrictions on the values of saref:accomplishes that only covered specific use cases; universal restrictions on the saref:actsUpon property have been changed to existential ones; restrictions on the commands that a saref:Function may have, since there could be others not included in the defined enumerations; restrictive documentation of saref:EventFunction and saref:SmokeSensor. - - Bugs have been fixed: some devices (saref:DoorSwitch, saref:EnergyMeter, saref:LigthSwitch, saref:SmokeSensor, and saref:TemperatureSensor) were defined as subclass of a device and at the same time as consisting of such device; a saref:LightSwitch controls light and does not measure light, since it is an actuator; incorrect documentation of saref:OnState and saref:OffState. - - The saref:BuildingRelated, saref:EnergyRelated and saref:FunctionRelated classes have been removed, since the different extensions already classify the device types. - - The instances of the subclasses of saref:Command have been removed, since they represent examples. - - The instances of saref:UnitOfMeasure have been moved to examples. - - The classes related to the SAREF4ENER extension have been removed: saref:Generator, saref:Storage, saref:Load and saref:EnergyMeter. - - Some instances of saref:Device have been moved to examples: saref:WashingMachine, saref:LightingDevice, saref:MicroRenewable, saref:Multimedia, and saref:Network. - - Added domain and range axioms wherever the definition of a property unambiguously identifies the domain or the range of the property. - - The OWL Time ontology is not imported anymore. - - The documentation of some ontology terms has been updated for clarification. - - Language tags have been added to all labels and comments. - - 3.1.1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A relationship between a certain entity (e.g., a device) and the task it accomplishes - accomplishes - - - - - - - - - - - A relationship between a command and a state - acts upon - - - - - - - - - A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor) - consists of - - - - - - - - - - - A relationship specifying the property that can be controlled by a certain device - controls property - - - - - - - - - - - - A relationship between a function and a command - has command - - - - - - - - - - - A relationship identifying the function of a device - has function - - - - - - - - - - - - A relationship between a feature of interest and a measurement about it - has measurement - - - - - - - - - - - A relationship between a metering function and the measurement of the reading - has meter reading - - - - - - - - - - - A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.) - has meter reading type - - - - - - - - - - A relationship indentifying the price associated to an entity - has price - - - - - - - - - - - A relationship associating a profile to a certain device - has profile - - - - - - - - - - - - A relationship between a feature of interest and a property of that feature - has property - - - - - - - - - - - A relationship between a sensing function and a measurement identifying the range of a sensor detection - has sensing range - - - - - - - - - - - A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) - has sensor type - - - - - - - - - - - A relationship identifying the type of state of a device - has state - - - - - - - - - - - A relationship associated with an event function to notify that a certain threshold measurement has been exceeded - has threshold measurement - - - - - - - - - - A relationship to associate time information to an entity - has time - - - - - - - - - A relationship identifying the typical (energy or power) consumption of a device - has typical consumption - - - - - - - - - A relationship identifying what an entity, such as a profile, is about - isAbout - - - - - - - - - - A relationship identifying an entity (e.g., a device) that can accomplish a task. - is accomplished by - - - - - - - - - - - A relationship between a command and a function. - is command of - - - - - - - - - - - A relationship specifying the devices that can control a certain property - is controlled by device - - - - - - - - - - - A relationship specifying the devices that can measure a certain property - is measured by device - - - - - - - - - - - A relationship identifying the unit of measure used for a certain entity. - is measured in - - - - - - - - - - - A relationship between a measurement and the feature of interest whose quality was measured - isMeasurementOf - - - - - - - - - - - - A relationship between a service and a device that offers the service - is offered by - - - - - - - - - - - A relationship between a property and the feature of interest it belongs to - is property of - - - - - - - - - A relationship specifying the commodity for which a device is used for - is used for - - - - - - - - - - - - A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates. - makes measurement - - - - - - - - - - - A relation between a measurement and the device that made it. - measurement made by - - - - - - - - - - - A relationship specifying the property that can be measured by a certain device - measures property - - - - - - - - - - - A relationship between a device and a service - offers - - - - - - - - - - - - A relationship between a property and the measurements it relates to - relates to measurement - - - - - - - - - - - A relationship between a measurement and the property it relates to - relates to property - - - - - - - - - - - A relationship between a service and a function. - represents - - - - - - - - - - - - - - - A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag. - DEPRECATED: The use of rdfs:comment is recommended instead. - has description - true - - - - - - - - - A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag. - has manufacturer - - - - - - - - - A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag. - has model - - - - - - - - - A relationship stating the timestamp of an entity (e.g. a measurement). - has timestamp - - - - - - - - - A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes. - has value - - - - - - - - - - - - - - - - A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off) - Actuating function - - - - - - - - - - - - - - - - A device responsible for moving or controlling a mechanism or system by performing an actuating function - Actuator - - - - - - - - - - An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking - Appliance - - - - - - - - - - - - - - - - - - - - - - - A type of command - Close command - - - - - - - - - - The state of a device that is CLOSE - Close state - - - - - - - - - - A type of commodity - Coal - - - - - - - - - - - - - - - - - - 1 - - - - A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended. - Command - - - - - - - - - A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. - Commodity - - - - - - - - - - The class of units of measure for price - Currency - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - 1 - - - - - - - 1 - - - - - - 1 - - - A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function. - Device - - - - - - - - - - - - - - - - - - - - - - A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety. - Door switch - - - - - - - - - - A type of commodity - Electricity - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. - Energy - - - - - - - - - - The unit of measure for energy - Energy unit - - - - - - - - - - - - - 1 - - - - A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved. - Event function - - - - - - - - - - - - - - - - - - - - - A feature of interest represents any real world entity from which a property is measured. - Feature of interest - - - - - - - - - - - - 1 - - - - The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. - Function - - - - - - - - - - A type of commodity - Gas - - - - - - - - - - A type of command - Get command - - - - - - - - - - - - - - - - A type of get command - Get current meter value command - - - - - - - - - - - - - - - - A type of get command - Get meter data command - - - - - - - - - - - - - - - - A type of get command - Get meter history command - - - - - - - - - - - - - - - - A type of get command - Get sensing data command - - - - - - - - - - Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort. - HVAC - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit - Humidity - - - - - - - - - - The unit of measure for light - Illuminance unit - - - - - - - - - - An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. - Level control function - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux) - Light - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting. - Light switch - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - 1 - - - - - - - - - - - - - 1 - - - Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement. - Measurement - - - - - - - - - - - - - - - - A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction. - Meter - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A function that allows to get data from a meter, such as current meter reading or instantaneous demand - Metering function - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion - Motion - - - - - - - - - - A type of state - Multi level state - - - - - - - - - - - - - - - - A type of command - Notify command - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy - Occupancy - - - - - - - - - - - - - - - - - - - - - - - A type of command - Off command - - - - - - - - - - The state of a device that is Off - Off state - - - - - - - - - - - - - - - - - - - - - - A type of command - On command - - - - - - - - - - An actuating function that allows to switch on and off an actuator - On off function - - - - - - - - - - A type of state - On off state - - - - - - - - - - The state of a device that is On - On state - - - - - - - - - - An actuating function that allows to open and close a device - Open close function - - - - - - - - - - A type of state - Open close state - - - - - - - - - - - - - - - - - - - - - - A type of command - Open command - - - - - - - - - - The state of a device that is OPEN - Open state - - - - - - - - - - A type of command - Pause command - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined. - Power - - - - - - - - - - The unit of measure for power - Power unit - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal) - Pressure - - - - - - - - - - The unit of measure for pressure - Pressure unit - - - - - - - - - - A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency - Price - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located. - Profile - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A quality of a feature of interest that can be measured; an aspect of a feature of interest that is intrinsic to and cannot exist without the feature - Property - - - - - - - - - - - - - - - - - - - - - - A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy) - Sensing function - - - - - - - - - - - - - - - - A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction. - Sensor - - - - - - - - - - - - 1 - - - - - - - 1 - - - - A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented. - Service - - - - - - - - - - A type of set level command - Set absolute level command - - - - - - - - - - - - - - - - - - - - - - A type of command - Set level command - - - - - - - - - - A type of set level command - Set relative level command - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke - Smoke - - - - - - - - - - - - - - - - - - - - - - - - - - - - A sensor that performs the saref:SensingFunction and the saref:EventFunction, and is used for the purpose of sensing a property of type saref:Smoke. A saref:SmokeSensor is typically used to saref:accomplish saref:Safety. - Smoke sensor - - - - - - - - - - - - - - - - - - - - - - - A type of command - Start command - - - - - - - - - - The state of a device that is STARTED - Start state - - - - - - - - - - An actuating function that allows to start and stop a device - Start stop function - - - - - - - - - - A type of state - Start stop state - - - - - - - - - The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended. - State - - - - - - - - - - - - - - - - - - - - - - - A type of command - Step down command - - - - - - - - - - - - - - - - - - - - - - A type of command - Step up command - - - - - - - - - - - - - - - - - - - - - - A type of command - Stop command - - - - - - - - - - The state of a device that is STOPPED - Stop state - - - - - - - - - - A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction - Switch - - - - - - - - - - - - - - - - - - - - - - A type of service that represents an on/off function to the network - Switch on service - - - - - - - - - The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. Tasks can be accomplished by devices (saref:isAccomplishedBy). - Task - - - - - - - - - - A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin) - Temperature - - - - - - - - - - - - - - - - - - - - - - A sensor that is used for the purpose of sensing a property of type saref:Temperature. A saref:TemperatureSensor is typically used to saref:accomplish saref:Comfort. - Temperature sensor - - - - - - - - - - The unit of measure for temperature - Temperature unit - - - - - - - - - A class that allows to specify the time concept. - Time - - - - - - - - - - - - - - - - A type of command - Toggle command - - - - - - - - - The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called "watt". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM). - Unit of measure - - - - - - - - - - A type of commodity - Water - - - - - - - - - - - - - - - - A type of task for which a device is designed - Cleaning - - - - - - - - - - A type of task for which a device is designed - Comfort - - - - - - - - - - A type of task for which a device is designed - Drying - - - - - - - - - - A type of task for which a device is designed - EnergyEfficiency - - - - - - - - - - A type of task for which a device is designed - Entertainment - - - - - - - - - - A type of task for which a device is designed - Lighting - - - - - - - - - - A type of task for which a device is designed - Meter reading - - - - - - - - - - A type of task for which a device is designed - Safety - - - - - - - - - - A type of task for which a device is designed - Washing - - - - - - - - - - A type of task for which a device is designed - WellBeing - - - - - - - - diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.html deleted file mode 100644 index 733eddb21427600b4211cc8d1618d60064cd1e41..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - -
-

Provenance for SAREF: the Smart Applications REFerence ontology Documentation (/home/ahmad/repos/mpovedavillalon@gmail.com/OnToology/saefv3.owl/documentation)

-
    -
  • Ontology contributed to by: : - http://maxime-lefrancois.info/me# (null), http://www.garcia-castro.com/foaf.rdf#me (null), https://w3id.org/people/mpoveda/ (null), https://www.linkedin.com/in/lauradaniele (null),
  • -
  • The ontology documentation was the result of using the Widoco tool (which itself uses LODE for generating the crossreference section).
  • -
-
-

back to documentation. TTL format

- - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.ttl b/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.ttl deleted file mode 100644 index f85b3ffbfc079cdc396fde91347d31e03c6320cd..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/provenance/provenance-en.ttl +++ /dev/null @@ -1,15 +0,0 @@ -@prefix prov: . -@prefix dc: . -@prefix foaf: . -<..\index-en.html> a prov:Entity; - dc:title "SAREF: the Smart Applications REFerence ontology"; - prov:wasAttributedTo ; - dc:contributor ; - prov:wasAttributedTo ; - dc:contributor ; - prov:wasAttributedTo ; - dc:contributor ; - prov:wasAttributedTo ; - dc:contributor ; - prov:wasAttributedTo ,; -. diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/readme.md b/src/main/resources/saref-portal-generator/public/core/v3.1.1/readme.md deleted file mode 100644 index 55c60f040229e5d5ff923ad238868108d0ec13c1..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/readme.md +++ /dev/null @@ -1,34 +0,0 @@ -About Widoco output -=================== -The purpose of Widoco is to reuse and integrate existing tools for documentation, plus the set of features listed below: -* Separation of the sections of your html page so you can write them independently and replace only those needed. -* Automatic annotation in RDF-a of the html produced. -* Association of a provenance page which includes the history of your vocabulary (W3C PROV-O compliant). -* Metadata extraction from the ontology plus the means to complete it on the fly when generating your ontology. -* Guidelines on the main sections that your document should have and how to complete them. - -Widoco will create 3 different folders: -| -|-provenance (a folder including an html and RDF serialization of how the documentation page was created) -|-resources (folder with the different resources) -|-sections (folder with the different sections of the documentation, separated for easy editing. Just edit one and the main page will be updated) - -Completing ontology metadata. -=================== -Widoco uses the ontology metadata to update a configuration file. If you complete that configuration file (ended up widoco.conf), the tool will enhance your html with additional details, such as how to cite the document, previous revisions, icons with the licence, etc. - -Browser issues -========== -The result of executing Widoco is an html file. We have tested it in Mozilla, IE and Chrome, and when the page is stored in a server all the browsers work correctly. If you view the file locally, we recommend you to use Mozilla Firefox (or Internet Explorer, if you must). Google Chrome will not show the contents correctly, as it doesn't allow XMLHttpRequest without HTTP. If you want to view the page locally with Google Chrome you have two possibilities: - -a) Place the file in a server and access it via its URL (for example, put it in dropbox and access through its public url). - -b) Execute Chrome with the following commands : - -(WIN) chrome.exe --allow-file-access-from-files, - -(OSX) open /Applications/Google\ Chrome.app/ --args --allow-file-access-from-files - -(UNX) /usr/bin/google-chrome --allow-file-access-from-files - -Do you have a problem? open an issue at https://github.com/dgarijo/Widoco \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/images/SAREF figures-Overview.jpg b/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/images/SAREF figures-Overview.jpg deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/jquery.js b/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/jquery.js deleted file mode 100644 index e67db74720181747df5fd8f310bf3a7293dcce34..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/jquery.js +++ /dev/null @@ -1,18 +0,0 @@ -/*! - * jQuery JavaScript Library v1.6.2 - * http://jquery.com/ - * - * Copyright 2011, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Thu Jun 30 14:16:56 2011 -0400 - */ -(function(a,b){function cv(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cs(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"":"")+""),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cr(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cq(){cn=b}function cp(){setTimeout(cq,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bx(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bm(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(be,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bl(a){f.nodeName(a,"input")?bk(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bk)}function bk(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bj(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bi(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bh(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(a,b){return(a&&a!=="*"?a+".":"")+b.replace(z,"`").replace(A,"&")}function M(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;ic)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function K(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function E(){return!0}function D(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z])/ig,x=function(a,b){return b.toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!A){A=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||D.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c
a",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0},m&&f.extend(p,{position:"absolute",left:-1e3,top:-1e3});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="
",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="
t
",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]||i[c]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=w:v&&c!=="className"&&(f.nodeName(a,"form")||u.test(c))&&(i=v)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}},value:{get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return f.prop(a,c)?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.attrHooks.title=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=/\.(.*)$/,y=/^(?:textarea|input|select)$/i,z=/\./g,A=/ /g,B=/[^\w\s.|`]/g,C=function(a){return a.replace(B,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=D;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=D);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),C).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i. -shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},J=function(c){var d=c.target,e,g;if(!!y.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=I(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:J,beforedeactivate:J,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&J.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&J.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",I(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in H)f.event.add(this,c+".specialChange",H[c]);return y.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return y.test(this.nodeName)}},H=f.event.special.change.filters,H.focus=H.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g0)for(h=g;h0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=T.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var X=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,Z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,$=/<([\w:]+)/,_=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]};bf.optgroup=bf.option,bf.tbody=bf.tfoot=bf.colgroup=bf.caption=bf.thead,bf.th=bf.td,f.support.htmlSerialize||(bf._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(X,""):null;if(typeof a=="string"&&!bb.test(a)&&(f.support.leadingWhitespace||!Y.test(a))&&!bf[($.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Z,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j -)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bi(a,d),e=bj(a),g=bj(d);for(h=0;e[h];++h)bi(e[h],g[h])}if(b){bh(a,d);if(c){e=bj(a),g=bj(d);for(h=0;e[h];++h)bh(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!ba.test(k))k=b.createTextNode(k);else{k=k.replace(Z,"<$1>");var l=($.exec(k)||["",""])[1].toLowerCase(),m=bf[l]||bf._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=_.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Y.test(k)&&o.insertBefore(b.createTextNode(Y.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bo.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bn.test(g)?g.replace(bn,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bx(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(by=function(a,c){var d,e,g;c=c.replace(bp,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bz=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bq.test(d)&&br.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bx=by||bz,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bB=/%20/g,bC=/\[\]$/,bD=/\r?\n/g,bE=/#.*$/,bF=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bG=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bH=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bI=/^(?:GET|HEAD)$/,bJ=/^\/\//,bK=/\?/,bL=/)<[^<]*)*<\/script>/gi,bM=/^(?:select|textarea)/i,bN=/\s+/,bO=/([?&])_=[^&]*/,bP=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bQ=f.fn.load,bR={},bS={},bT,bU;try{bT=e.href}catch(bV){bT=c.createElement("a"),bT.href="",bT=bT.href}bU=bP.exec(bT.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bQ)return bQ.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bL,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bM.test(this.nodeName)||bG.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bD,"\r\n")}}):{name:b.name,value:c.replace(bD,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bT,isLocal:bH.test(bU[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bW(bR),ajaxTransport:bW(bS),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?bZ(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=b$(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bE,"").replace(bJ,bU[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bN),d.crossDomain==null&&(r=bP.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bU[1]&&r[2]==bU[2]&&(r[3]||(r[1]==="http:"?80:443))==(bU[3]||(bU[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bX(bR,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bI.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bK.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bO,"$1_="+x);d.url=y+(y===d.url?(bK.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bX(bS,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bB,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn,co=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cr("show",3),a,b,c);for(var g=0,h=this.length;g=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b
";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cu.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cu.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cv(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cv(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/marked.min.js b/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/marked.min.js deleted file mode 100644 index 281f657a0d38e8bce36c7949786127d17a2d7f82..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/marked.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * marked - a markdown parser - * Copyright (c) 2011-2014, Christopher Jeffrey. (MIT Licensed) - * https://github.com/chjj/marked - */ -(function(){var block={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:noop,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,nptable:noop,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,blockquote:/^( *>[^\n]+(\n(?!def)[^\n]+)*\n*)+/,list:/^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment|closed|closing) *(?:\n{2,}|\s*$)/,def:/^ *\[([^\]]+)\]: *]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,table:noop,paragraph:/^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,text:/^[^\n]+/};block.bullet=/(?:[*+-]|\d+\.)/;block.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/;block.item=replace(block.item,"gm")(/bull/g,block.bullet)();block.list=replace(block.list)(/bull/g,block.bullet)("hr","\\n+(?=\\1?(?:[-*_] *){3,}(?:\\n+|$))")("def","\\n+(?="+block.def.source+")")();block.blockquote=replace(block.blockquote)("def",block.def)();block._tag="(?!(?:"+"a|em|strong|small|s|cite|q|dfn|abbr|data|time|code"+"|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo"+"|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|[^\\w\\s@]*@)\\b";block.html=replace(block.html)("comment",//)("closed",/<(tag)[\s\S]+?<\/\1>/)("closing",/])*?>/)(/tag/g,block._tag)();block.paragraph=replace(block.paragraph)("hr",block.hr)("heading",block.heading)("lheading",block.lheading)("blockquote",block.blockquote)("tag","<"+block._tag)("def",block.def)();block.normal=merge({},block);block.gfm=merge({},block.normal,{fences:/^ *(`{3,}|~{3,}) *(\S+)? *\n([\s\S]+?)\s*\1 *(?:\n+|$)/,paragraph:/^/});block.gfm.paragraph=replace(block.paragraph)("(?!","(?!"+block.gfm.fences.source.replace("\\1","\\2")+"|"+block.list.source.replace("\\1","\\3")+"|")();block.tables=merge({},block.gfm,{nptable:/^ *(\S.*\|.*)\n *([-:]+ *\|[-| :]*)\n((?:.*\|.*(?:\n|$))*)\n*/,table:/^ *\|(.+)\n *\|( *[-:]+[-| :]*)\n((?: *\|.*(?:\n|$))*)\n*/});function Lexer(options){this.tokens=[];this.tokens.links={};this.options=options||marked.defaults;this.rules=block.normal;if(this.options.gfm){if(this.options.tables){this.rules=block.tables}else{this.rules=block.gfm}}}Lexer.rules=block;Lexer.lex=function(src,options){var lexer=new Lexer(options);return lexer.lex(src)};Lexer.prototype.lex=function(src){src=src.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n");return this.token(src,true)};Lexer.prototype.token=function(src,top,bq){var src=src.replace(/^ +$/gm,""),next,loose,cap,bull,b,item,space,i,l;while(src){if(cap=this.rules.newline.exec(src)){src=src.substring(cap[0].length);if(cap[0].length>1){this.tokens.push({type:"space"})}}if(cap=this.rules.code.exec(src)){src=src.substring(cap[0].length);cap=cap[0].replace(/^ {4}/gm,"");this.tokens.push({type:"code",text:!this.options.pedantic?cap.replace(/\n+$/,""):cap});continue}if(cap=this.rules.fences.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:"code",lang:cap[2],text:cap[3]});continue}if(cap=this.rules.heading.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:"heading",depth:cap[1].length,text:cap[2]});continue}if(top&&(cap=this.rules.nptable.exec(src))){src=src.substring(cap[0].length);item={type:"table",header:cap[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:cap[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:cap[3].replace(/\n$/,"").split("\n")};for(i=0;i ?/gm,"");this.token(cap,top,true);this.tokens.push({type:"blockquote_end"});continue}if(cap=this.rules.list.exec(src)){src=src.substring(cap[0].length);bull=cap[2];this.tokens.push({type:"list_start",ordered:bull.length>1});cap=cap[0].match(this.rules.item);next=false;l=cap.length;i=0;for(;i1&&b.length>1)){src=cap.slice(i+1).join("\n")+src;i=l-1}}loose=next||/\n\n(?!\s*$)/.test(item);if(i!==l-1){next=item.charAt(item.length-1)==="\n";if(!loose)loose=next}this.tokens.push({type:loose?"loose_item_start":"list_item_start"});this.token(item,false,bq);this.tokens.push({type:"list_item_end"})}this.tokens.push({type:"list_end"});continue}if(cap=this.rules.html.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:cap[1]==="pre"||cap[1]==="script"||cap[1]==="style",text:cap[0]});continue}if(!bq&&top&&(cap=this.rules.def.exec(src))){src=src.substring(cap[0].length);this.tokens.links[cap[1].toLowerCase()]={href:cap[2],title:cap[3]};continue}if(top&&(cap=this.rules.table.exec(src))){src=src.substring(cap[0].length);item={type:"table",header:cap[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:cap[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:cap[3].replace(/(?: *\| *)?\n$/,"").split("\n")};for(i=0;i])/,autolink:/^<([^ >]+(@|:\/)[^ >]+)>/,url:noop,tag:/^|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,link:/^!?\[(inside)\]\(href\)/,reflink:/^!?\[(inside)\]\s*\[([^\]]*)\]/,nolink:/^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,strong:/^__([\s\S]+?)__(?!_)|^\*\*([\s\S]+?)\*\*(?!\*)/,em:/^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,code:/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,br:/^ {2,}\n(?!\s*$)/,del:noop,text:/^[\s\S]+?(?=[\\?(?:\s+['"]([\s\S]*?)['"])?\s*/;inline.link=replace(inline.link)("inside",inline._inside)("href",inline._href)();inline.reflink=replace(inline.reflink)("inside",inline._inside)();inline.normal=merge({},inline);inline.pedantic=merge({},inline.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/});inline.gfm=merge({},inline.normal,{escape:replace(inline.escape)("])","~|])")(),url:/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,del:/^~~(?=\S)([\s\S]*?\S)~~/,text:replace(inline.text)("]|","~]|")("|","|https?://|")()});inline.breaks=merge({},inline.gfm,{br:replace(inline.br)("{2,}","*")(),text:replace(inline.gfm.text)("{2,}","*")()});function InlineLexer(links,options){this.options=options||marked.defaults;this.links=links;this.rules=inline.normal;this.renderer=this.options.renderer||new Renderer;this.renderer.options=this.options;if(!this.links){throw new Error("Tokens array requires a `links` property.")}if(this.options.gfm){if(this.options.breaks){this.rules=inline.breaks}else{this.rules=inline.gfm}}else if(this.options.pedantic){this.rules=inline.pedantic}}InlineLexer.rules=inline;InlineLexer.output=function(src,links,options){var inline=new InlineLexer(links,options);return inline.output(src)};InlineLexer.prototype.output=function(src){var out="",link,text,href,cap;while(src){if(cap=this.rules.escape.exec(src)){src=src.substring(cap[0].length);out+=cap[1];continue}if(cap=this.rules.autolink.exec(src)){src=src.substring(cap[0].length);if(cap[2]==="@"){text=cap[1].charAt(6)===":"?this.mangle(cap[1].substring(7)):this.mangle(cap[1]);href=this.mangle("mailto:")+text}else{text=escape(cap[1]);href=text}out+=this.renderer.link(href,null,text);continue}if(!this.inLink&&(cap=this.rules.url.exec(src))){src=src.substring(cap[0].length);text=escape(cap[1]);href=text;out+=this.renderer.link(href,null,text);continue}if(cap=this.rules.tag.exec(src)){if(!this.inLink&&/^/i.test(cap[0])){this.inLink=false}src=src.substring(cap[0].length);out+=this.options.sanitize?escape(cap[0]):cap[0];continue}if(cap=this.rules.link.exec(src)){src=src.substring(cap[0].length);this.inLink=true;out+=this.outputLink(cap,{href:cap[2],title:cap[3]});this.inLink=false;continue}if((cap=this.rules.reflink.exec(src))||(cap=this.rules.nolink.exec(src))){src=src.substring(cap[0].length);link=(cap[2]||cap[1]).replace(/\s+/g," ");link=this.links[link.toLowerCase()];if(!link||!link.href){out+=cap[0].charAt(0);src=cap[0].substring(1)+src;continue}this.inLink=true;out+=this.outputLink(cap,link);this.inLink=false;continue}if(cap=this.rules.strong.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.strong(this.output(cap[2]||cap[1]));continue}if(cap=this.rules.em.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.em(this.output(cap[2]||cap[1]));continue}if(cap=this.rules.code.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.codespan(escape(cap[2],true));continue}if(cap=this.rules.br.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.br();continue}if(cap=this.rules.del.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.del(this.output(cap[1]));continue}if(cap=this.rules.text.exec(src)){src=src.substring(cap[0].length);out+=escape(this.smartypants(cap[0]));continue}if(src){throw new Error("Infinite loop on byte: "+src.charCodeAt(0))}}return out};InlineLexer.prototype.outputLink=function(cap,link){var href=escape(link.href),title=link.title?escape(link.title):null;return cap[0].charAt(0)!=="!"?this.renderer.link(href,title,this.output(cap[1])):this.renderer.image(href,title,escape(cap[1]))};InlineLexer.prototype.smartypants=function(text){if(!this.options.smartypants)return text;return text.replace(/--/g,"—").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")};InlineLexer.prototype.mangle=function(text){var out="",l=text.length,i=0,ch;for(;i.5){ch="x"+ch.toString(16)}out+="&#"+ch+";"}return out};function Renderer(options){this.options=options||{}}Renderer.prototype.code=function(code,lang,escaped){if(this.options.highlight){var out=this.options.highlight(code,lang);if(out!=null&&out!==code){escaped=true;code=out}}if(!lang){return"
"+(escaped?code:escape(code,true))+"\n
"}return'
'+(escaped?code:escape(code,true))+"\n
\n"};Renderer.prototype.blockquote=function(quote){return"
\n"+quote+"
\n"};Renderer.prototype.html=function(html){return html};Renderer.prototype.heading=function(text,level,raw){return"'+text+"\n"};Renderer.prototype.hr=function(){return this.options.xhtml?"
\n":"
\n"};Renderer.prototype.list=function(body,ordered){var type=ordered?"ol":"ul";return"<"+type+">\n"+body+"\n"};Renderer.prototype.listitem=function(text){return"
  • "+text+"
  • \n"};Renderer.prototype.paragraph=function(text){return"

    "+text+"

    \n"};Renderer.prototype.table=function(header,body){return"\n"+"\n"+header+"\n"+"\n"+body+"\n"+"
    \n"};Renderer.prototype.tablerow=function(content){return"\n"+content+"\n"};Renderer.prototype.tablecell=function(content,flags){var type=flags.header?"th":"td";var tag=flags.align?"<"+type+' style="text-align:'+flags.align+'">':"<"+type+">";return tag+content+"\n"};Renderer.prototype.strong=function(text){return""+text+""};Renderer.prototype.em=function(text){return""+text+""};Renderer.prototype.codespan=function(text){return""+text+""};Renderer.prototype.br=function(){return this.options.xhtml?"
    ":"
    "};Renderer.prototype.del=function(text){return""+text+""};Renderer.prototype.link=function(href,title,text){if(this.options.sanitize){try{var prot=decodeURIComponent(unescape(href)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return""}if(prot.indexOf("javascript:")===0){return""}}var out='
    ";return out};Renderer.prototype.image=function(href,title,text){var out=''+text+'":">";return out};function Parser(options){this.tokens=[];this.token=null;this.options=options||marked.defaults;this.options.renderer=this.options.renderer||new Renderer;this.renderer=this.options.renderer;this.renderer.options=this.options}Parser.parse=function(src,options,renderer){var parser=new Parser(options,renderer);return parser.parse(src)};Parser.prototype.parse=function(src){this.inline=new InlineLexer(src.links,this.options,this.renderer);this.tokens=src.reverse();var out="";while(this.next()){out+=this.tok()}return out};Parser.prototype.next=function(){return this.token=this.tokens.pop()};Parser.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0};Parser.prototype.parseText=function(){var body=this.token.text;while(this.peek().type==="text"){body+="\n"+this.next().text}return this.inline.output(body)};Parser.prototype.tok=function(){switch(this.token.type){case"space":{return""}case"hr":{return this.renderer.hr()}case"heading":{return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,this.token.text)}case"code":{return this.renderer.code(this.token.text,this.token.lang,this.token.escaped)}case"table":{var header="",body="",i,row,cell,flags,j;cell="";for(i=0;i/g,">").replace(/"/g,""").replace(/'/g,"'")}function unescape(html){return html.replace(/&([#\w]+);/g,function(_,n){n=n.toLowerCase();if(n==="colon")return":";if(n.charAt(0)==="#"){return n.charAt(1)==="x"?String.fromCharCode(parseInt(n.substring(2),16)):String.fromCharCode(+n.substring(1))}return""})}function replace(regex,opt){regex=regex.source;opt=opt||"";return function self(name,val){if(!name)return new RegExp(regex,opt);val=val.source||val;val=val.replace(/(^|[^\[])\^/g,"$1");regex=regex.replace(name,val);return self}}function noop(){}noop.exec=noop;function merge(obj){var i=1,target,key;for(;iAn error occured:

    "+escape(e.message+"",true)+"
    "}throw e}}marked.options=marked.setOptions=function(opt){merge(marked.defaults,opt);return marked};marked.defaults={gfm:true,tables:true,breaks:false,pedantic:false,sanitize:false,smartLists:false,silent:false,highlight:null,langPrefix:"lang-",smartypants:false,headerPrefix:"",renderer:new Renderer,xhtml:false};marked.Parser=Parser;marked.parser=Parser.parse;marked.Renderer=Renderer;marked.Lexer=Lexer;marked.lexer=Lexer.lex;marked.InlineLexer=InlineLexer;marked.inlineLexer=InlineLexer.output;marked.parse=marked;if(typeof module!=="undefined"&&typeof exports==="object"){module.exports=marked}else if(typeof define==="function"&&define.amd){define(function(){return marked})}else{this.marked=marked}}).call(function(){return this||(typeof window!=="undefined"?window:global)}()); \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/rec.css b/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/rec.css deleted file mode 100644 index 55d481d81a0c500bd0f4f08d070e1ce4e17d2a32..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/resources/rec.css +++ /dev/null @@ -1,88 +0,0 @@ -/* Style for a "Recommendation" */ - -/* - Copyright 1997-2003 W3C (MIT, ERCIM, Keio). All Rights Reserved. - The following software licensing rules apply: - http://www.w3.org/Consortium/Legal/copyright-software */ - -/* $Id: base.css,v 1.25 2006/04/18 08:42:53 bbos Exp $ */ - -body { - padding: 2em 1em 2em 70px; - margin: 0; - font-family: sans-serif; - color: black; - background: white; - background-position: top left; - background-attachment: fixed; - background-repeat: no-repeat; - counter-reset:section; -} -:link { color: #00C; background: transparent } -:visited { color: #609; background: transparent } -a:active { color: #C00; background: transparent } - -a:link img, a:visited img { border-style: none } /* no border on img links */ - -a img { color: white; } /* trick to hide the border in Netscape 4 */ -@media all { /* hide the next rule from Netscape 4 */ - a img { color: inherit; } /* undo the color change above */ -} - -th, td { /* ns 4 */ - font-family: sans-serif; -} - -h1, h2, h3, h4, h5, h6 { text-align: left } -h2.list{counter-reset:subsection } -h2.list:before{counter-increment:section;content: counter(section) ". ";} -h3.list:before{counter-increment:subsection;content: counter(section) "." counter(subsection) ". "; - } -h3.list{margin-top: 20px; - border-bottom: 0px; } -/* background should be transparent, but WebTV has a bug */ -h1, h2, h3 { color: #005A9C; background: white } -h1 { font: 170% sans-serif } -h2 { font: 140% sans-serif } -h3 { font: 120% sans-serif } -h4 { font: bold 100% sans-serif } -h5 { font: italic 100% sans-serif } -h6 { font: small-caps 100% sans-serif } - -.hide { display: none } - -div.head { margin-bottom: 1em } -div.head h1 { margin-top: 2em; clear: both } -div.head table { margin-left: 2em; margin-top: 2em } - -p.copyright { font-size: small } -p.copyright small { font-size: small } - -@media screen { /* hide from IE3 */ -a[href]:hover { background: #ffa } -} - -pre { margin-left: 2em } -/* -p { - margin-top: 0.6em; - margin-bottom: 0.6em; -} -*/ -dt, dd { margin-top: 0; margin-bottom: 0 } /* opera 3.50 */ -dt { font-weight: bold } - -pre, code { font-family: monospace } /* navigator 4 requires this */ - -ul.toc, ol.toc { - list-style: disc; /* Mac NS has problem with 'none' */ - list-style: none; -} - -@media aural { - h1, h2, h3 { stress: 20; richness: 90 } - .hide { speak: none } - p.copyright { volume: x-soft; speech-rate: x-fast } - dt { pause-before: 20% } - pre { speak-punctuation: code } -} diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/abstract-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/abstract-en.html deleted file mode 100644 index b4843469c1f2f80109f466d5008e5ff7a5bc7bbc..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/abstract-en.html +++ /dev/null @@ -1,4 +0,0 @@ - -

    Abstract

    -The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market. - diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/crossref-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/crossref-en.html deleted file mode 100644 index 2c9da3741ad2d8f4f4213dd5f4bb58f9fdce450b..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/crossref-en.html +++ /dev/null @@ -1,3298 +0,0 @@ -

    Cross reference for SAREF: the Smart Applications REFerence ontology classes, properties and dataproperties back to ToC

    -This section provides details for each class and property defined by SAREF: the Smart Applications REFerence ontology. -
    -

    Classes

    - -
    -

    Actuating functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/ActuatingFunction

    -
    - A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off) -
    -
    -
    has super-classes
    -
    - Function - c -
    -
    has sub-classes
    -
    - Level control function - c, On off function - c, Open close function - c, Start stop function - c -
    -
    -
    -
    -

    Actuatorc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Actuator

    -
    - A device responsible for moving or controlling a mechanism or system by performing an actuating function -
    -
    -
    has super-classes
    -
    - Device - c -
    -
    has sub-classes
    -
    - Switch - c -
    -
    -
    -
    -

    Appliancec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Appliance

    -
    - An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking -
    -
    -
    has super-classes
    -
    - Device - c -
    -
    -
    -
    -

    Close commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/CloseCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Open command - c -
    -
    -
    -
    -

    Close statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/CloseState

    -
    - The state of a device that is CLOSE -
    -
    -
    has super-classes
    -
    - Open close state - c -
    -
    -
    -
    -

    Coalc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Coal

    -
    - A type of commodity -
    -
    -
    has super-classes
    -
    - Commodity - c -
    -
    -
    -
    -

    Commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Command

    -
    - A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended. -
    -
    -
    has super-classes
    -
    -
    has sub-classes
    -
    - Close command - c, Get command - c, Notify command - c, Off command - c, On command - c, Open command - c, Pause command - c, Set level command - c, Start command - c, Step down command - c, Step up command - c, Stop command - c, Toggle command - c -
    -
    is in domain of
    -
    - acts upon - op, is command of - op -
    -
    is in range of
    -
    - has command - op -
    -
    -
    -
    -

    Commodityc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Commodity

    -
    - A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. -
    -
    -
    has sub-classes
    -
    - Coal - c, Electricity - c, Gas - c, Water - c -
    -
    -
    -
    -

    Currencyc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Currency

    -
    - The class of units of measure for price -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Devicec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Device

    -
    - A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function. -
    -
    -
    has super-classes
    -
    -
    has sub-classes
    -
    - Actuator - c, Appliance - c, HVAC - c, Meter - c, Sensor - c -
    -
    is in domain of
    -
    - controls property - op, has function - op, has profile - op, has state - op, makes measurement - op, measures property - op, offers - op -
    -
    is in range of
    -
    - is controlled by device - op, is measured by device - op, is offered by - op, measurement made by - op -
    -
    -
    -
    -

    Door switchc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/DoorSwitch

    -
    - A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety. -
    -
    -
    has super-classes
    -
    - Switch - c -
    -
    -
    -
    -

    Electricityc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Electricity

    -
    - A type of commodity -
    -
    -
    has super-classes
    -
    - Commodity - c -
    -
    -
    -
    -

    Energyc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Energy

    -
    - A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Energy unitc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/EnergyUnit

    -
    - The unit of measure for energy -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Event functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/EventFunction

    -
    - A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved. -
    -
    -
    has super-classes
    -
    - Function - c -
    -
    is in domain of
    -
    - has threshold measurement - op -
    -
    -
    -
    -

    Feature of interestc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/FeatureOfInterest

    -
    - A feature of interest represents any real world entity from which a property is measured. -
    -
    -
    has super-classes
    -
    -
    is in domain of
    -
    - has measurement - op, has property - op -
    -
    is in range of
    -
    - is property of - op, isMeasurementOf - op -
    -
    -
    -
    -

    Functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Function

    -
    - The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. -
    -
    -
    has super-classes
    -
    -
    has sub-classes
    -
    - Actuating function - c, Event function - c, Metering function - c, Sensing function - c -
    -
    is in domain of
    -
    - has command - op -
    -
    is in range of
    -
    - has function - op, is command of - op, represents - op -
    -
    -
    -
    -

    Gasc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Gas

    -
    - A type of commodity -
    -
    -
    has super-classes
    -
    - Commodity - c -
    -
    -
    -
    -

    Get commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/GetCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    has sub-classes
    -
    - Get current meter value command - c, Get meter data command - c, Get meter history command - c, Get sensing data command - c -
    -
    -
    -
    -

    Get current meter value commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/GetCurrentMeterValueCommand

    -
    - A type of get command -
    -
    -
    has super-classes
    -
    - Get command - c -
    -
    -
    -
    -

    Get meter data commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/GetMeterDataCommand

    -
    - A type of get command -
    -
    -
    has super-classes
    -
    - Get command - c -
    -
    -
    -
    -

    Get meter history commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/GetMeterHistoryCommand

    -
    - A type of get command -
    -
    -
    has super-classes
    -
    - Get command - c -
    -
    -
    -
    -

    Get sensing data commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/GetSensingDataCommand

    -
    - A type of get command -
    -
    -
    has super-classes
    -
    - Get command - c -
    -
    -
    -
    -

    Humidityc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Humidity

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    HVACc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/HVAC

    -
    - Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort. -
    -
    -
    has super-classes
    -
    - Device - c -
    -
    -
    -
    -

    Illuminance unitc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/IlluminanceUnit

    -
    - The unit of measure for light -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Level control functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/LevelControlFunction

    -
    - An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. -
    -
    -
    has super-classes
    -
    - Actuating function - c -
    -
    -
    -
    -

    Lightc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Light

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux) -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Light switchc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/LightSwitch

    -
    - A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting. -
    -
    -
    has super-classes
    -
    - Switch - c -
    -
    -
    -
    -

    Measurementc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Measurement

    -
    - Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement. -
    -
    -
    has super-classes
    -
    -
    is in domain of
    -
    - is measured in - op, isMeasurementOf - op, measurement made by - op, relates to property - op -
    -
    is in range of
    -
    - has measurement - op, has meter reading - op, has sensing range - op, has threshold measurement - op, makes measurement - op, relates to measurement - op -
    -
    -
    -
    -

    Meterc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Meter

    -
    - A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction. -
    -
    -
    has super-classes
    -
    - Device - c -
    -
    -
    -
    -

    Metering functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/MeteringFunction

    -
    - A function that allows to get data from a meter, such as current meter reading or instantaneous demand -
    -
    -
    has super-classes
    -
    - Function - c -
    -
    is in domain of
    -
    - has meter reading - op, has meter reading type - op -
    -
    -
    -
    -

    Motionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Motion

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Multi level statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/MultiLevelState

    -
    - A type of state -
    -
    -
    has super-classes
    -
    - State - c -
    -
    -
    -
    -

    Notify commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/NotifyCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    -
    -
    -

    Occupancyc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Occupancy

    -
    - A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Off commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OffCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - On command - c -
    -
    -
    -
    -

    Off statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OffState

    -
    - The state of a device that is Off -
    -
    -
    has super-classes
    -
    - On off state - c -
    -
    -
    -
    -

    On commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OnCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Off command - c -
    -
    -
    -
    -

    On off functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OnOffFunction

    -
    - An actuating function that allows to switch on and off an actuator -
    -
    -
    has super-classes
    -
    - Actuating function - c -
    -
    -
    -
    -

    On off statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OnOffState

    -
    - A type of state -
    -
    -
    has super-classes
    -
    - State - c -
    -
    has sub-classes
    -
    - Off state - c, On state - c -
    -
    -
    -
    -

    On statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OnState

    -
    - The state of a device that is On -
    -
    -
    has super-classes
    -
    - On off state - c -
    -
    -
    -
    -

    Open close functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OpenCloseFunction

    -
    - An actuating function that allows to open and close a device -
    -
    -
    has super-classes
    -
    - Actuating function - c -
    -
    -
    -
    -

    Open close statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OpenCloseState

    -
    - A type of state -
    -
    -
    has super-classes
    -
    - State - c -
    -
    has sub-classes
    -
    - Close state - c, Open state - c -
    -
    -
    -
    -

    Open commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OpenCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Close command - c -
    -
    -
    -
    -

    Open statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/OpenState

    -
    - The state of a device that is OPEN -
    -
    -
    has super-classes
    -
    - Open close state - c -
    -
    -
    -
    -

    Pause commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/PauseCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    -
    -
    -

    Powerc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Power

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined. -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Power unitc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/PowerUnit

    -
    - The unit of measure for power -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Pressurec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Pressure

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal) -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Pressure unitc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/PressureUnit

    -
    - The unit of measure for pressure -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Pricec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Price

    -
    - A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    is in range of
    -
    - has price - op -
    -
    -
    -
    -

    Profilec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Profile

    -
    - A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located. -
    -
    -
    has super-classes
    -
    -
    is in range of
    -
    - has profile - op -
    -
    -
    -
    -

    Propertyc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Property

    -
    - A quality of a feature of interest that can be measured; an aspect of a feature of interest that is intrinsic to and cannot exist without the feature -
    -
    -
    has super-classes
    -
    -
    has sub-classes
    -
    - Energy - c, Humidity - c, Light - c, Motion - c, Occupancy - c, Power - c, Pressure - c, Price - c, Smoke - c, Temperature - c -
    -
    is in domain of
    -
    - is controlled by device - op, is measured by device - op, is property of - op, relates to measurement - op -
    -
    is in range of
    -
    - controls property - op, has meter reading type - op, has property - op, has sensor type - op, measures property - op, relates to property - op -
    -
    -
    -
    -

    Sensing functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SensingFunction

    -
    - A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy) -
    -
    -
    has super-classes
    -
    - Function - c -
    -
    is in domain of
    -
    - has sensing range - op, has sensor type - op -
    -
    -
    -
    -

    Sensorc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Sensor

    -
    - A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction. -
    -
    -
    has super-classes
    -
    - Device - c -
    -
    has sub-classes
    -
    - Smoke sensor - c, Temperature sensor - c -
    -
    -
    -
    -

    Servicec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Service

    -
    - A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented. -
    -
    -
    has super-classes
    -
    -
    has sub-classes
    -
    - Switch on service - c -
    -
    is in domain of
    -
    - is offered by - op, represents - op -
    -
    is in range of
    -
    - offers - op -
    -
    -
    -
    -

    Set absolute level commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SetAbsoluteLevelCommand

    -
    - A type of set level command -
    -
    -
    has super-classes
    -
    - Set level command - c -
    -
    -
    -
    -

    Set level commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SetLevelCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    has sub-classes
    -
    - Set absolute level command - c, Set relative level command - c -
    -
    -
    -
    -

    Set relative level commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SetRelativeLevelCommand

    -
    - A type of set level command -
    -
    -
    has super-classes
    -
    - Set level command - c -
    -
    -
    -
    -

    Smokec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Smoke

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Smoke sensorc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SmokeSensor

    -
    - A sensor that performs the saref:SensingFunction and the saref:EventFunction, and is used for the purpose of sensing a property of type saref:Smoke. A saref:SmokeSensor is typically used to saref:accomplish saref:Safety. -
    -
    -
    has super-classes
    -
    - Sensor - c -
    -
    -
    -
    -

    Start commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StartCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Stop command - c -
    -
    -
    -
    -

    Start statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StartState

    -
    - The state of a device that is STARTED -
    -
    -
    has super-classes
    -
    - Start stop state - c -
    -
    -
    -
    -

    Start stop functionc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StartStopFunction

    -
    - An actuating function that allows to start and stop a device -
    -
    -
    has super-classes
    -
    - Actuating function - c -
    -
    -
    -
    -

    Start stop statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StartStopState

    -
    - A type of state -
    -
    -
    has super-classes
    -
    - State - c -
    -
    has sub-classes
    -
    - Start state - c, Stop state - c -
    -
    -
    -
    -

    Statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/State

    -
    - The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended. -
    -
    -
    has sub-classes
    -
    - Multi level state - c, On off state - c, Open close state - c, Start stop state - c -
    -
    is in range of
    -
    - acts upon - op, has state - op -
    -
    -
    -
    -

    Step down commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StepDownCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Step up command - c -
    -
    -
    -
    -

    Step up commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StepUpCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Step down command - c -
    -
    -
    -
    -

    Stop commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StopCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    is disjoint with
    -
    - Start command - c -
    -
    -
    -
    -

    Stop statec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/StopState

    -
    - The state of a device that is STOPPED -
    -
    -
    has super-classes
    -
    - Start stop state - c -
    -
    -
    -
    -

    Switchc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Switch

    -
    - A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction -
    -
    -
    has super-classes
    -
    - Actuator - c -
    -
    has sub-classes
    -
    - Door switch - c, Light switch - c -
    -
    -
    -
    -

    Switch on servicec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/SwitchOnService

    -
    - A type of service that represents an on/off function to the network -
    -
    -
    has super-classes
    -
    - Service - c -
    -
    -
    -
    -

    Taskc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Task

    -
    - The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. Tasks can be accomplished by devices (saref:isAccomplishedBy). -
    -
    -
    is in domain of
    -
    - is accomplished by - op -
    -
    is in range of
    -
    - accomplishes - op -
    -
    has members
    -
    - Cleaning - ni, Comfort - ni, Drying - ni, EnergyEfficiency - ni, Entertainment - ni, Lighting - ni, Meter reading - ni, Safety - ni, Washing - ni, WellBeing - ni -
    -
    -
    -
    -

    Temperaturec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Temperature

    -
    - A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin) -
    -
    -
    has super-classes
    -
    - Property - c -
    -
    -
    -
    -

    Temperature sensorc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/TemperatureSensor

    -
    - A sensor that is used for the purpose of sensing a property of type saref:Temperature. A saref:TemperatureSensor is typically used to saref:accomplish saref:Comfort. -
    -
    -
    has super-classes
    -
    - Sensor - c -
    -
    -
    -
    -

    Temperature unitc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/TemperatureUnit

    -
    - The unit of measure for temperature -
    -
    -
    has super-classes
    -
    - Unit of measure - c -
    -
    -
    -
    -

    Timec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Time

    -
    - A class that allows to specify the time concept. -
    -
    -
    is in range of
    -
    - has time - op -
    -
    -
    -
    -

    Toggle commandc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/ToggleCommand

    -
    - A type of command -
    -
    -
    has super-classes
    -
    - Command - c -
    -
    -
    -
    -

    Unit of measurec - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/UnitOfMeasure

    -
    - The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called "watt". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM). -
    -
    -
    has sub-classes
    -
    - Currency - c, Energy unit - c, Illuminance unit - c, Power unit - c, Pressure unit - c, Temperature unit - c -
    -
    is in range of
    -
    - is measured in - op -
    -
    -
    -
    -

    Waterc - back to ToC or Class ToC - -

    -

    - IRI: https://saref.etsi.org/core/Water

    -
    - A type of commodity -
    -
    -
    has super-classes
    -
    - Commodity - c -
    -
    -
    -
    -

    Object Properties

    - -
    -

    accomplishesop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/accomplishes

    -
    - A relationship between a certain entity (e.g., a device) and the task it accomplishes -
    -
    -
    -
    has range
    -
    - Task - c -
    -
    is inverse of
    -
    - is accomplished by - op -
    -
    -
    -
    -
    -

    acts uponop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/actsUpon

    -
    - A relationship between a command and a state -
    -
    -
    -
    has domain
    -
    - Command - c -
    -
    has range
    -
    - State - c -
    -
    -
    -
    -
    -

    consists ofop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/consistsOf

    -
    - A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor) -
    -
    -
    -

    controls propertyop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/controlsProperty

    -
    - A relationship specifying the property that can be controlled by a certain device -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Property - c -
    -
    -
    -
    -
    -

    has commandop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasCommand

    -
    - A relationship between a function and a command -
    -
    -
    -
    has domain
    -
    - Function - c -
    -
    has range
    -
    - Command - c -
    -
    is inverse of
    -
    - is command of - op -
    -
    -
    -
    -
    -

    has functionop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasFunction

    -
    - A relationship identifying the function of a device -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Function - c -
    -
    -
    -
    -
    -

    has measurementop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasMeasurement

    -
    - A relationship between a feature of interest and a measurement about it -
    -
    -
    -
    has domain
    -
    - Feature of interest - c -
    -
    has range
    -
    - Measurement - c -
    -
    is inverse of
    -
    - isMeasurementOf - op -
    -
    -
    -
    -
    -

    has meter readingop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasMeterReading

    -
    - A relationship between a metering function and the measurement of the reading -
    -
    -
    -
    has domain
    -
    - Metering function - c -
    -
    has range
    -
    - Measurement - c -
    -
    -
    -
    -
    -

    has meter reading typeop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasMeterReadingType

    -
    - A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.) -
    -
    -
    -
    has domain
    -
    - Metering function - c -
    -
    has range
    -
    - Property - c -
    -
    -
    -
    -
    -

    has priceop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasPrice

    -
    - A relationship indentifying the price associated to an entity -
    -
    -
    -
    has range
    -
    - Price - c -
    -
    -
    -
    -
    -

    has profileop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasProfile

    -
    - A relationship associating a profile to a certain device -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Profile - c -
    -
    -
    -
    -
    -

    has propertyop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasProperty

    -
    - A relationship between a feature of interest and a property of that feature -
    -
    -
    -
    has domain
    -
    - Feature of interest - c -
    -
    has range
    -
    - Property - c -
    -
    is inverse of
    -
    - is property of - op -
    -
    -
    -
    -
    -

    has sensing rangeop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasSensingRange

    -
    - A relationship between a sensing function and a measurement identifying the range of a sensor detection -
    -
    -
    -
    has domain
    -
    - Sensing function - c -
    -
    has range
    -
    - Measurement - c -
    -
    -
    -
    -
    -

    has sensor typeop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasSensorType

    -
    - A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) -
    -
    -
    -
    has domain
    -
    - Sensing function - c -
    -
    has range
    -
    - Property - c -
    -
    -
    -
    -
    -

    has stateop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasState

    -
    - A relationship identifying the type of state of a device -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - State - c -
    -
    -
    -
    -
    -

    has threshold measurementop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasThresholdMeasurement

    -
    - A relationship associated with an event function to notify that a certain threshold measurement has been exceeded -
    -
    -
    -
    has domain
    -
    - Event function - c -
    -
    has range
    -
    - Measurement - c -
    -
    -
    -
    -
    -

    has timeop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasTime

    -
    - A relationship to associate time information to an entity -
    -
    -
    -
    has range
    -
    - Time - c -
    -
    -
    -
    -
    -

    has typical consumptionop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasTypicalConsumption

    -
    - A relationship identifying the typical (energy or power) consumption of a device -
    -
    -
    -

    is accomplished byop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isAccomplishedBy

    -
    - A relationship identifying an entity (e.g., a device) that can accomplish a task. -
    -
    -
    -
    has domain
    -
    - Task - c -
    -
    is inverse of
    -
    - accomplishes - op -
    -
    -
    -
    -
    -

    is command ofop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isCommandOf

    -
    - A relationship between a command and a function. -
    -
    -
    -
    has domain
    -
    - Command - c -
    -
    has range
    -
    - Function - c -
    -
    is inverse of
    -
    - has command - op -
    -
    -
    -
    -
    -

    is controlled by deviceop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isControlledByDevice

    -
    - A relationship specifying the devices that can control a certain property -
    -
    -
    -
    has domain
    -
    - Property - c -
    -
    has range
    -
    - Device - c -
    -
    -
    -
    -
    -

    is measured by deviceop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isMeasuredByDevice

    -
    - A relationship specifying the devices that can measure a certain property -
    -
    -
    -
    has domain
    -
    - Property - c -
    -
    has range
    -
    - Device - c -
    -
    -
    -
    -
    -

    is measured inop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isMeasuredIn

    -
    - A relationship identifying the unit of measure used for a certain entity. -
    -
    -
    -
    has domain
    -
    - Measurement - c -
    -
    has range
    -
    - Unit of measure - c -
    -
    -
    -
    -
    -

    is offered byop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isOfferedBy

    -
    - A relationship between a service and a device that offers the service -
    -
    -
    -
    has domain
    -
    - Service - c -
    -
    has range
    -
    - Device - c -
    -
    is inverse of
    -
    - offers - op -
    -
    -
    -
    -
    -

    is property ofop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isPropertyOf

    -
    - A relationship between a property and the feature of interest it belongs to -
    -
    -
    -
    has domain
    -
    - Property - c -
    -
    has range
    -
    - Feature of interest - c -
    -
    is inverse of
    -
    - has property - op -
    -
    -
    -
    -
    -

    is used forop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isUsedFor

    -
    - A relationship specifying the commodity for which a device is used for -
    -
    -
    -

    isAboutop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isAbout

    -
    - A relationship identifying what an entity, such as a profile, is about -
    -
    -
    -

    isMeasurementOfop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/isMeasurementOf

    -
    - A relationship between a measurement and the feature of interest whose quality was measured -
    -
    -
    -
    has domain
    -
    - Measurement - c -
    -
    has range
    -
    - Feature of interest - c -
    -
    is inverse of
    -
    - has measurement - op -
    -
    -
    -
    -
    -

    makes measurementop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/makesMeasurement

    -
    - A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates. -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Measurement - c -
    -
    is inverse of
    -
    - measurement made by - op -
    -
    -
    -
    -
    -

    measurement made byop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/measurementMadeBy

    -
    - A relation between a measurement and the device that made it. -
    -
    -
    -
    has domain
    -
    - Measurement - c -
    -
    has range
    -
    - Device - c -
    -
    is inverse of
    -
    - makes measurement - op -
    -
    -
    -
    -
    -

    measures propertyop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/measuresProperty

    -
    - A relationship specifying the property that can be measured by a certain device -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Property - c -
    -
    -
    -
    -
    -

    offersop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/offers

    -
    - A relationship between a device and a service -
    -
    -
    -
    has domain
    -
    - Device - c -
    -
    has range
    -
    - Service - c -
    -
    is inverse of
    -
    - is offered by - op -
    -
    -
    -
    -
    -

    relates to measurementop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/relatesToMeasurement

    -
    - A relationship between a property and the measurements it relates to -
    -
    -
    -
    has domain
    -
    - Property - c -
    -
    has range
    -
    - Measurement - c -
    -
    is inverse of
    -
    - relates to property - op -
    -
    -
    -
    -
    -

    relates to propertyop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/relatesToProperty

    -
    - A relationship between a measurement and the property it relates to -
    -
    -
    -
    has domain
    -
    - Measurement - c -
    -
    has range
    -
    - Property - c -
    -
    is inverse of
    -
    - relates to measurement - op -
    -
    -
    -
    -
    -

    representsop - back to ToC or Object Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/represents

    -
    - A relationship between a service and a function. -
    -
    -
    -
    has domain
    -
    - Service - c -
    -
    has range
    -
    - Function - c -
    -
    -
    -
    -
    -

    Data Properties

    - -
    -

    has descriptiondp - back to ToC or Data Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasDescription

    -
    - A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag. -
    -
    -
    Is deprecated
    -
    true
    -
    -
    -
    -

    has manufacturerdp - back to ToC or Data Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasManufacturer

    -
    - A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag. -
    -
    -
    -

    has modeldp - back to ToC or Data Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasModel

    -
    - A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag. -
    -
    -
    -

    has timestampdp - back to ToC or Data Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasTimestamp

    -
    - A relationship stating the timestamp of an entity (e.g. a measurement). -
    -
    -
    -

    has valuedp - back to ToC or Data Property ToC - -

    -

    - IRI: https://saref.etsi.org/core/hasValue

    -
    - A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes. -
    -
    -
    -

    Named Individuals

    - -
    -

    Cleaningni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Cleaning

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Comfortni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Comfort

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Dryingni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Drying

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    EnergyEfficiencyni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/EnergyEfficiency

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Entertainmentni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Entertainment

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Lightingni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Lighting

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Meter readingni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/MeterReading

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Safetyni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Safety

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Washingni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/Washing

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    WellBeingni - back to ToC or Named Individual ToC - -

    -

    - IRI: https://saref.etsi.org/core/WellBeing

    -
    - A type of task for which a device is designed -
    -
    -
    belongs to
    -
    - Task - c -
    -
    -
    -
    -

    Legend back to ToC

    -
    -c: Classes
    -op: Object Properties
    -dp: Data Properties
    -ni: Named Individuals -
    -
    - diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/description-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/description-en.html deleted file mode 100644 index 32b4322449add253e456a7271f9c2265fc45abd6..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/description-en.html +++ /dev/null @@ -1,11 +0,0 @@ - -

    SAREF: the Smart Applications REFerence ontology: Description back to ToC

    - - -Figure 1 shows an overview of the main classes of SAREF and their relationships. - - -
    SAREF ontology graphical overview.
    Figure 1. - SAREF overview.
    - - - diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/introduction-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/introduction-en.html deleted file mode 100644 index 3e8e1bd2ef65b774cb93e907866e3727c7642910..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/introduction-en.html +++ /dev/null @@ -1,22 +0,0 @@ -

    Introduction back to ToC

    - -
    -

    Namespace declarations

    -
    - - - - - - - - - - - - -
    Table 1: Namespaces used in the document
    saref<https://saref.etsi.org/core/>
    forge-etsi-org<https://forge.etsi.org>
    owl<http://www.w3.org/2002/07/owl>
    rdf<http://www.w3.org/1999/02/22-rdf-syntax-ns>
    terms<http://purl.org/dc/terms>
    xsd<http://www.w3.org/2001/XMLSchema>
    rdfs<http://www.w3.org/2000/01/rdf-schema>
    vann<http://purl.org/vocab/vann>
    -
    -
    - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/overview-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/overview-en.html deleted file mode 100644 index 015556cb00fefc38301af92e214b4c6a427c2eb9..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/overview-en.html +++ /dev/null @@ -1,410 +0,0 @@ -

    SAREF: the Smart Applications REFerence ontology: Overview back to ToC

    - -This ontology has the following classes and properties. -

    Classes

    -

    Object Properties

    Data Properties

    Named Individuals

    diff --git a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/references-en.html b/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/references-en.html deleted file mode 100644 index 5501c97880a5a84b7f6635c882ed459a732144df..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/core/v3.1.1/sections/references-en.html +++ /dev/null @@ -1,6 +0,0 @@ - -

    References back to ToC

    - -Add your references here. It is recommended to have them as a list. - - diff --git a/src/main/resources/saref-portal-generator/public/index (copy).html b/src/main/resources/saref-portal-generator/public/index (copy).html deleted file mode 100644 index 10e33ff52257095f34337c059164f85391966d4a..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/index (copy).html +++ /dev/null @@ -1,473 +0,0 @@ - - - - - - - - - - SAREF - portal - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - Smart Applications REFerence Ontology, and extensions

    -

    Official ETSI portal for SAREF
    This page contains pointers to the SAREF ontologies and SAREF-related work items

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    - - -
    - -
    - -
    -
    -

    Filter by title or domain:

    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OntologySerializationLicenseAuthorsLanguageDomainDescription
    - SAREF: the Smart Appliances REFerence ontology - - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - en - smart appliances IoT - -

    - The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets in the smart appliances domain. -

    - -
    - SAREF extension for environment - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - environment - light pollution - photometer - SAREF - -

    - This ontology extends the SAREF ontology for the environment domain, specifically for the light pollution domain, including concepts like photometers, light, etc. -

    - -
    - SAREF extension for building devices - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - building - building device - device - IFC - SAREF - -

    - This ontology extends the SAREF ontology for the building domain by defining building devices and how they are located in a building. -

    - -
    - SAREF extension for energy - - html - turtle - xml - xml - Laura Daniele - en - smart appliances energy - -

    - SAREF4ENER is an extension of SAREF for the Energy domain -

    - -
    SAREF extension for the Smart Agriculture and Food Chain Domains - html - turtle - xml - xml - Laura Daniele - enComing soonDescription coming soon
    SAREF extension for the Industry and Manufacturing Domains - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - Mike de Roode - Matthijs Punter - Alba Fernandez Izquierdo, UPM - enComing soonDescription coming soon
    SAREF extension for the Smart City Domain - html - turtle - xml - xml - Raúl García-Castro - María Poveda-Villalón - Paola Patricia Espinoza Arias - enComing soonDescription coming soon
    SAREF Systems: typology of systems and their inter-connections - html - turtle - xml - xml - Maxime Lefrançois - enComing soonDescription coming soon
    -
    -
    -
    - - - - - diff --git a/src/main/resources/saref-portal-generator/public/index-maria.html b/src/main/resources/saref-portal-generator/public/index-maria.html deleted file mode 100644 index dc865df74430a2238e90154943cb8cc69bb9c1f4..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/index-maria.html +++ /dev/null @@ -1,1188 +0,0 @@ - - - - - - - - - - - { ?title } - - - - - - - - - - - - - - - - - - - - - - - SAREF Portal - index - - - -
    - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - Smart Applications REFerence Ontology, and extensions

    -

    Official ETSI portal for SAREF
    This page contains pointers to the SAREF ontologies and SAREF-related work items

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    -
    -
    -
    -

    Filter by title or domain:

    -
    -
    - Remove filter -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OntologySerializationLicenseAuthorsLanguageDomainDescription
    - SAREF: the Smart Appliances REFerence ontology - - html - turtle - xml - CC-by4.0 - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - en - smart appliances IoT - -

    - The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing ... See more -

    - -
    - SAREF extension for environment - - html - turtle - xml - CC-by4.0 - María Poveda-Villalón - Raúl García-Castro - - en - environment - light pollution - photometer - SAREF - -

    - This ontology extends the SAREF ontology for the environment domain, specifically for the light pollution domain, including ... See more -

    - -
    - SAREF extension for building devices - - html - turtle - xml - CC-by4.0 - María Poveda-Villalón - Raúl García-Castro - - en - building - building device - device - IFC - SAREF - -

    - This ontology extends the SAREF ontology for the building domain by defining building devices and how they are located in ... See more -

    - -
    - SAREF extension for energy - - html - turtle - xml - CC-by4.0 - Laura Daniele - en - smart appliances energy - -

    - SAREF4ENER is an extension of SAREF for the Energy domain that was created in collaboration with Energy@Home ... See more -

    - -
    SAREF extension for the Smart Agriculture and Food Chain Domains - html - turtle - xml - CC-by4.0 - Laura Daniele - enComing soonDescription coming soon
    SAREF extension for the Industry and Manufacturing Domains - html - turtle - xml - CC-by4.0 - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - Mike de Roode - Matthijs Punter - Alba Fernandez Izquierdo, UPM - enComing soonDescription coming soon
    SAREF extension for the Smart City Domain - html - turtle - xml - CC-by4.0 - Raúl García-Castro - María Poveda-Villalón - Paola Patricia Espinoza Arias - enComing soonDescription coming soon
    SAREF Systems - html - turtle - xml - CC-by4.0 - Maxime Lefrançois - enComing soonDescription coming soon
    -
    - - -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/index-online.html b/src/main/resources/saref-portal-generator/public/index-online.html deleted file mode 100644 index 7373b0db644c3fe042792c4b62d8919daa0b85f6..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/index-online.html +++ /dev/null @@ -1,412 +0,0 @@ - - - - - - - - - - SAREF - portal - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - Smart Applications REFerence Ontology, and extensions

    -

    Official ETSI portal for SAREF
    This page contains pointers to the SAREF ontologies and SAREF-related work items

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    -
    -
    -

    Filter by title or domain:

    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OntologySerializationLicenseAuthorsLanguageDomainDescription
    - SAREF: the Smart Appliances REFerence ontology - - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - en - smart appliances IoT - -

    - The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets in the smart appliances domain. -

    - -
    - SAREF extension for environment - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - environment - light pollution - photometer - SAREF - -

    - This ontology extends the SAREF ontology for the environment domain, specifically for the light pollution domain, including concepts like photometers, light, etc. -

    - -
    - SAREF extension for building devices - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - building - building device - device - IFC - SAREF - -

    - This ontology extends the SAREF ontology for the building domain by defining building devices and how they are located in a building. -

    - -
    - SAREF extension for energy - - html - turtle - xml - xml - Laura Daniele - en - smart appliances energy - -

    - SAREF4ENER is an extension of SAREF for the Energy domain -

    - -
    SAREF extension for the Smart Agriculture and Food Chain Domains - html - turtle - xml - xml - Laura Daniele - enComing soonDescription coming soon
    SAREF extension for the Industry and Manufacturing Domains - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - Mike de Roode - Matthijs Punter - Alba Fernandez Izquierdo, UPM - enComing soonDescription coming soon
    SAREF extension for the Smart City Domain - html - turtle - xml - xml - Raúl García-Castro - María Poveda-Villalón - Paola Patricia Espinoza Arias - enComing soonDescription coming soon
    SAREF Systems: typology of systems and their inter-connections - html - turtle - xml - xml - Maxime Lefrançois - enComing soonDescription coming soon
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/index.html b/src/main/resources/saref-portal-generator/public/index.html deleted file mode 100644 index 8ef786c88ae40344f3e0b6b18e3652366adbce5c..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/index.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - SAREF - portal - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - Smart Applications REFerence Ontology, and extensions

    -

    Official ETSI portal for SAREF
    This page contains pointers to the SAREF ontologies and SAREF-related work items

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required - to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    - - -
    - -
    -
    -

    - - What is SAREF? -

    - - -

    The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets in the smart appliances domain.

    -

    SAREF provides building blocks that allow separation and recombination of different parts of the ontology depending on specific needs.

    -
    - -
    -

    - - Why SAREF? -

    -

    SAREF explicitly specifies recurring core concepts in the smart appliances domain, the main relationships between these concepts, and axioms to constrain the usage of these concepts and relationships. SAREF has been - created based on the following fundamental principles:
    - -

      -
    • Reuse and alignment of concepts and relationships that are defined in existing assets
    • -
    • Modularity to allow separation and recombination of different parts of the ontology depending on specific needs
    • -
    • Extensibility to allow further growth of the ontology
    • -
    • Maintainability to facilitate the process of identifying and correcting defects, accommodate new - requirements, and cope with changes in (parts of) SAREF
    • - - -
    -

    -
    - - - -
    - center -
    - -
    - - - -
    - -
    - - - diff --git a/src/main/resources/saref-portal-generator/public/lode/extra.css b/src/main/resources/saref-portal-generator/public/lode/extra.css deleted file mode 100644 index 38e86dcf061d461a1cfbc3943ff1ab5c888154a5..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/lode/extra.css +++ /dev/null @@ -1,124 +0,0 @@ -body { - text-align: justify; -} - -h1 { - line-height: 110%; -} - -.hlist { - border: 1px solid navy; - padding:5px; - background-color: #F4FFFF; -} - -.hlist li { - display: inline; - display: inline-table; - list-style-type: none; - padding-right: 20px; - -} - -.entity { - border: 1px solid navy; - margin:5px 0px 5px 0px; - padding: 5px; -} - -.type-c { - cursor:help; - color:orange; -} - -.type-op { - cursor:help; - color:navy; -} - -.type-dp { - cursor:help; - color:green; -} - -.type-ap { - cursor:help; - color:maroon; -} - -.type-ni { - cursor:help; - color:brown; -} - -.logic { - color:purple; - font-weight:bold; -} - -h3 { - margin-top: 3px; - padding-bottom: 5px; - border-bottom: 1px solid navy; -} - -h2 { - margin-top:40px; -} - -.dotted { - border-bottom: 1px dotted gray; -} - -dt { - margin-top:5px; -} - -.description { - border-top: 1px dashed gray; - border-bottom: 1px dashed gray; - background-color: rgb(242, 243, 244); - margin-top:5px; - padding-bottom:5px; -} - -.description dl { - background-color: rgb(242, 243, 244); -} - -.description ul { - padding-left: 12px; - margin-top: 0px; -} - -.backlink { - font-size:10pt; - text-align:right; - float:right; - color:black; - padding: 2px; - border: 1px dotted navy; - background-color: #F4FFFF; -} - -.imageblock { - text-align: center; -} - -.imageblock img { - border:1px solid gray; -} - -.endnote { - margin-top: 40px; - border-top: 1px solid gray; - padding-top: 10px; - text-align: center; - color:gray; - font-size:70%; -} - -.literal { - color:green; - font-style:italic; -} \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/lode/owl.css b/src/main/resources/saref-portal-generator/public/lode/owl.css deleted file mode 100644 index 9e80a257a37f672ee0d6e3380311bbe04d76a958..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/lode/owl.css +++ /dev/null @@ -1,248 +0,0 @@ -.RFC2119 { - text-transform: lowercase; - font-style: italic; -} -.nonterminal { - font-weight: bold; - font-family: sans-serif; - font-size: 95%; -} -#abstract br { - /* doesn't work right SOMETIMES - margin-bottom: 1em; */ -} -.name { - font-family: monospace; -} -.buttonpanel { - margin-top: 1ex; - margin-bottom: 1ex; - padding-left: 1ex; - padding-right: 1ex; - padding-top: 1ex; - padding-bottom: 0.6ex; - border: 1px dotted black; -} -.grammar { - margin-top: 1ex; - margin-bottom: 1ex; - padding-left: 1ex; - padding-right: 1ex; - padding-top: 1ex; - padding-bottom: 0.6ex; - border: 1px dashed #2f6fab; - font-family: monospace; -} -.image { - text-align: center; -} -.centered { - text-align: center; - padding-top: 4ex; - padding-bottom: 4ex; -} -.centered table { - margin: 0 auto; - text-align: left; -} -.caption { - font-weight: bold; -} -.indent { - margin-left: 20px; -} -.atrisknote { - padding: 5px; - margin-top: 10px; - margin-bottom: 10px; - border: solid 2px blue; - background-color: #FFA; -} -.atrisknotehead { - font-style: italic; -} - -/* Stying the examples. */ - -.anexample:before { - content: "Example:"; - font-family: sans-serif; - font-size: 1.6ex; - font-weight: bold; -} -.anexample { - margin-top: 1ex; - margin-bottom: 1ex; - padding-left: 1ex; - padding-right: 1ex; - padding-top: 1ex; - padding-bottom: 0.6ex; - border: 1px dashed #2f6fab; - background-color: #f9f9f9; -} -.anexample table { - background-color: #f9f9f9; -} - -/* Styling the parts in the functional-style syntax. */ - -div.fss { - margin-top: 10px; - margin-bottom: 10px; - margin-left: 20px; - margin-right: 20px; - font-family: monospace; -} -table.fss { - margin: 0px 0px 0px 0px; - padding: 0px 0px 0px 0px; - width: 100%; -} -table.fss caption.fss { - font-size: 1.5ex; - font-weight: bold; - text-align: left; - padding-left: 10px; -} -table.fss td:first-child { - font-family: monospace; - padding-left: 20px; - padding-right: 20px; - width: 60%; -} -table{ - background-color: #f4ffff; - border: 1px solid navy; - margin: 20px; - vertical-align: middle; -} -table td { - padding: 5px 15px; - text-align: left; -} - -/* Styling the parts in the RDF syntax. */ - -div.rdf{ - margin-top: 10px; - margin-bottom: 10px; - margin-left: 20px; - margin-right: 20px; - font-family: monospace; -} -table.rdf { - margin: 0px 0px 0px 0px; - padding: 0px 0px 0px 0px; - width: 100%; -} -table.rdf caption.rdf { - font-size: 1.5ex; - font-weight: bold; - text-align: left; - padding-left: 10px; -} -table.rdf td:first-child { - font-family: monospace; - padding-left: 20px; - padding-right: 20px; - width: 60%; -} - -/* Styling the XML syntax. */ - -div.xmlsyn { - margin-top: 10px; - margin-bottom: 10px; - margin-left: 20px; - margin-right: 20px; - font-family: monospace; -} -div.axioms { - margin-top: 10px; - margin-bottom: 10px; - margin-left: 20px; - margin-right: 20px; -} - -/* Other styles. */ - -table.complexity td { - text-align: center; -} -table.allname td { - font-family: monospace; -} -table.canonicalparsing { - margin-left: 20px; - border-style: none; -} -table.canonicalparsing td { - vertical-align: top; - padding: 2px 2px 2px 2px; -} -table.canonicalparsing td.two { - padding-left: 30px; -} - -/* The following are classes for templates used in the editing process. */ - -.review { - padding: 5px; - border: solid 1px black; - margin-left: 10%; - margin-top: 10px; - margin-bottom: 10px; - background-color: #FFA; - font-size: smaller; -} -.reviewauthor { - font-size: smaller; - font-style: italic; -} -.ednote { - padding: 5px; - border: solid 1px black; - margin-top: 10px; - margin-bottom: 10px; -} -.ednotehead { - font-weight: bold; -} - -/* override mediawiki's beautiful DL styling... */ -dl { - background: white; - width: 100%; - border: none; - margin-top: 0; - margin-bottom: 0; - padding-top: 0; - padding-bottom: 0; -} - -div { - margin-top: 0; - margin-bottom: 0; -} -#fulltitle { - font-size: 140%; - font-weight: bold; -} - -.xml { - color: red -} - -.rdbms{ -color: red -} - -/* just copying from wiki, so it stays through TR. Currently - affects Primer, at least */ -pre { - background-color:#F9F9F9; - border:1px dashed #2F6FAB; - color:black; - line-height:1.1em; - padding:1em; -} \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/lode/primer.css b/src/main/resources/saref-portal-generator/public/lode/primer.css deleted file mode 100644 index fc28be7169638d433e9e0576fc93c1991dd50328..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/lode/primer.css +++ /dev/null @@ -1,103 +0,0 @@ -/* define a class "noprint" for sections which don't get printed */ -.noprint { display: none; } - -/* our syntax menu for switching */ -div.syntaxmenu { - border: 1px dotted black; - padding:0.5em; - margin: 1em; -} - -.container { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; -} - -@media print { - div.syntaxmenu { display:none; } -} - -/* use tab-like headers for syntax examples */ -div.exampleheader { - font-size: 90%; - float: left; - background: #F9F9F9; - color: #2F6FAB; - border: 1px dashed #2F6FAB; - border-bottom: 0px; - padding-top: 2px; -} - -div.exampleheader span.exampleheader { - background: #F9F9F9; - padding-top: 0px; - padding-right: 10px; - padding-left: 10px; - padding-bottom: 3px; - padding-top: 0px; -} - -/* Also copy MediaWiki style here, so it will not look different when exported */ -div.fssyntax pre, div.rdfxml pre, div.owlxml pre, div.turtle pre, div.manchester pre { - background-color: #F9F9F9; - border: 1px dashed #2F6FAB; - color: black; - line-height: 1.1em; - padding: 1em; - clear: both; - margin-left: 0em; -} -/* Expansion to add the status*/ -.status { - position: fixed; - left: 0em; - top: 0em; - text-align: right; - vertical-align: middle; - /* Square version of the inside span. Slightly larger */ - width: 26em; - height: 26em; - z-index: -1; - opacity: 0.8; - - /** From http://stackoverflow.com/questions/1080792/how-to-draw-vertical-text-with-css-cross-browser */ - - -webkit-transform: rotate(-90deg); - -moz-transform: rotate(-90deg); - -ms-transform: rotate(-90deg); - -o-transform: rotate(-90deg); - transform: rotate(-90deg); - /* also accepts left, right, top, bottom coordinates; not - * required, but a good idea for styling */ - -webkit-transform-origin: 50% 50%; - -moz-transform-origin: 50% 50%; - -ms-transform-origin: 50% 50%; - -o-transform-origin: 50% 50%; - transform-origin: 50% 50%; - - /* Should be unset in IE9+ I think. */ - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); -} - -/* The actual status box */ - .status div { - display: block; - background: rgb(0, 90, 156); - color: white; - width: 24em; - padding-top: 0.3em; - padding-left: 0em; - padding-right: 5em; - padding-bottom: 0.3em; - /* Enable for debugging - border: red thin solid; - */ -} - -/* And text inside, don't confuse fonts as it breaks em above */ -.status div span { - font-family: "Tauri"; - font-size: larger; -} \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/resources.html b/src/main/resources/saref-portal-generator/public/resources.html deleted file mode 100644 index 407fe52e07d666e60dba69b4aa4de6b5ec141c6e..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/resources.html +++ /dev/null @@ -1,450 +0,0 @@ - - - - - - - - - - SAREF - portal - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - Smart Applications REFerence Ontology, and extensions

    -

    Official ETSI portal for SAREF
    This page contains pointers to the SAREF ontologies and SAREF-related work items

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    - - -
    -
    -

    Filter by title or domain:

    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OntologySerializationLicenseAuthorsLanguageDomainDescriptionVisualizeImpactStatistics
    - SAREF: the Smart Appliances REFerence ontology - - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - en - smart appliances IoT - -

    - The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets in the smart appliances domain. -

    - -
    - SAREF extension for environment - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - environment - light pollution - photometer - SAREF - -

    - This ontology extends the SAREF ontology for the environment domain, specifically for the light pollution domain, including concepts like photometers, light, etc. -

    - -
    - SAREF extension for building devices - - html - turtle - xml - xml - María Poveda-Villalón - Raúl García-Castro - - en - building - building device - device - IFC - SAREF - -

    - This ontology extends the SAREF ontology for the building domain by defining building devices and how they are located in a building. -

    - -
    - SAREF extension for energy - - html - turtle - xml - xml - Laura Daniele - en - smart appliances energy - -

    - SAREF4ENER is an extension of SAREF for the Energy domain -

    - -
    SAREF extension for the Smart Agriculture and Food Chain Domains - html - turtle - xml - xml - Laura Daniele - enComing soonDescription coming soon
    SAREF extension for the Industry and Manufacturing Domains - html - turtle - xml - xml - Laura Daniele - María Poveda-Villalón - Raúl García-Castro - Mike de Roode - Matthijs Punter - Alba Fernandez Izquierdo, UPM - enComing soonDescription coming soon
    SAREF extension for the Smart City Domain - html - turtle - xml - xml - Raúl García-Castro - María Poveda-Villalón - Paola Patricia Espinoza Arias - enComing soonDescription coming soon
    SAREF Systems: typology of systems and their inter-connections - html - turtle - xml - xml - Maxime Lefrançois - enComing soonDescription coming soon
    -
    -
    -
    - - - - - diff --git a/src/main/resources/saref-portal-generator/public/saref/latest/saref.html b/src/main/resources/saref-portal-generator/public/saref/latest/saref.html deleted file mode 100644 index 0a96975e52296808766636480fb12194924834f1..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/saref/latest/saref.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - - - - - SAREF - portal - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - SAREF: the Smart Applications REFerence ontology

    -

    Official ETSI documentation for SAREF v2.1.1
    This page will soon contain the documentation of the SAREF ontology v2.1.1

    -

    Note: This portal is under construction. It was drafted in the context of ETSI Specialist Task Force 556. More effort is required to automatize the portal content generation and deployment workflow.

    -
    -
    -
    -
    -
    -
    -

    The documentation of SAREF v2.1.1 will be available here soon. The source of the ontology are available as Turtle or RDF/XML Visualize it with VOWL

    -
    -
    -
    -
    -

    The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets (standards/protocols/datamodels/etc.) in the smart appliances domain. The SAREF ontology provides building blocks that allow separation and recombination of different parts of the ontology depending on specific needs. The starting point of SAREF is the concept of device (e.g., a switch). Devices are tangible objects designed to accomplish a particular task in households, common public buildings or offices. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs the start and stop function. The SAREF ontology offers a lists of basic functions that can be eventually combined in order to have more complex functions in a single device. For example, a switch offers an actuating function of type 'switching on/off'. Each function has some associated commands, which can also be picked up as building blocks from a list. For example, the 'switching on/off' is associated with the commands 'switch on', 'switch off' and 'toggle'. Depending on the function(s) it accomplishes, a device can be found in some corresponding states that are also listed as building blocks. When connected to a network, a device offers a service, which is a representation of a function to a network that makes the function discoverable, registerable and remotely controllable by other devices in the network. A service can represent one or more functions. A service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A service must specify the device that is offering the service and the function(s) to be represented. A device in the SAREF ontology is also characterized by a profile that can be used to optimize some property, such as Energy, in a home or office that are part of a building.

    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/src/main/resources/saref-portal-generator/public/saref/latest/saref.n3 b/src/main/resources/saref-portal-generator/public/saref/latest/saref.n3 deleted file mode 100644 index ac283155f090b97bcf68708020d493ee0c0c756c..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/saref/latest/saref.n3 +++ /dev/null @@ -1,1231 +0,0 @@ -@prefix rdf: . -@prefix owl: . -@prefix xml: . -@prefix saref: . -@prefix xsd: . -@prefix dcterms: . -@prefix rdfs: . -@prefix time: . -@prefix vann: . -@prefix foaf: . -@prefix om: . - -saref:controlsProperty - a owl:ObjectProperty ; - rdfs:comment "A relationship specifying the Property that can be controlled by a certain Device"@en ; - rdfs:label "controls property"@en . - -saref:On a saref:OnState , saref:OnCommand , owl:NamedIndividual ; - rdfs:comment "The value ON. It is used to instantiate different classes such as the OnCommand class and OnState class. " ; - rdfs:label "On" . - -saref:hasTimestamp a owl:DatatypeProperty ; - rdfs:comment "A relationship stating the timestamp of an entity (e.g. a measurement)."@en ; - rdfs:label "has timestamp"@en . - -saref:HVAC a owl:Class ; - rdfs:comment "Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort" ; - rdfs:label "HVAC" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Comfort ; - owl:onProperty saref:accomplishes - ] . - -saref:OnCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "On command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:OnOffState ; - owl:onProperty saref:actsUpon - ] . - -saref:GetSensingData a saref:GetSensingDataCommand , owl:NamedIndividual ; - rdfs:comment "The command GET SENSING DATA. It is used to instantiate the GetSensingDataCommand class. " ; - rdfs:label "Get sensing data" . - -om:lux a saref:IlluminanceUnit , owl:NamedIndividual ; - rdfs:comment "The lux is a unit of illuminance defined as lumen divided by square metre = candela times steradian divided by square metre."@en ; - rdfs:label "lux" . - -saref:StopCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Stop command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:StartStopState ; - owl:onProperty saref:actsUpon - ] . - -saref:GetSensingDataCommand - a owl:Class ; - rdfs:comment "A type of get command" ; - rdfs:label "Get sensing data command" ; - rdfs:subClassOf saref:GetCommand . - -saref:NotifyCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Notify command" ; - rdfs:subClassOf saref:Command . - -saref:GetCurrentMeterValue - a saref:GetCurrentMeterValueCommand , owl:NamedIndividual ; - rdfs:comment "The command GET CURRENT METER VALUE. It is used to instantiate the GetCurrentMeterValueCommand class. " ; - rdfs:label "Get current meter value" . - -saref:SetRelativeLevelCommand - a owl:Class ; - rdfs:comment "A type of set level command" ; - rdfs:label "Set relative level command" ; - rdfs:subClassOf saref:SetLevelCommand . - -saref:StartStopState a owl:Class ; - rdfs:comment "A type of state" ; - rdfs:label "Start stop state" ; - rdfs:subClassOf saref:State . - -saref:isUsedFor a owl:ObjectProperty ; - rdfs:comment "A relationship specifying the purpose for which a device is used for (e.g., controlling a Commodity)" ; - rdfs:label "is used for" . - -saref:isAbout a owl:ObjectProperty ; - rdfs:comment "A relationship identifying what an entity, such as a Profile, is about"@en ; - rdfs:label "isAbout"@en . - -saref:FunctionRelated - a owl:Class ; - rdfs:comment "A category that considers devices, sensors and their specification in terms of functions, states and services" ; - rdfs:label "Function related" ; - rdfs:subClassOf saref:Device . - -saref:Stop a saref:StopState , saref:StopCommand , owl:NamedIndividual ; - rdfs:comment "The value STOP. It is used to instantiate different classes such as the StopCommand class and StopState class. " ; - rdfs:label "Stop" . - -saref:SetRelativeLevel - a saref:SetRelativeLevelCommand , owl:NamedIndividual ; - rdfs:comment "The value SET RELATIVE LEVEL. It is used to instantiate classes such as the SetRelativeLevelCommand class. " ; - rdfs:label "Set relative level" . - -saref:LevelControlFunction - a owl:Class ; - rdfs:comment "An actuating function that allows to do level adjustments of an actuator in a certain range (e.g., 0%-100%), such as dimming a light or set the speed of an electric motor. " ; - rdfs:label "Level control function" ; - rdfs:subClassOf saref:ActuatingFunction ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:SetAbsoluteLevelCommand saref:SetRelativeLevelCommand saref:StepDownCommand saref:StepUpCommand ) - ] ; - owl:onProperty saref:hasCommand - ] . - -saref:GetMeterData a saref:GetMeterDataCommand , owl:NamedIndividual ; - rdfs:comment "The command GET METER DATA. It is used to instantiate the GetMeterDataCommand class. " ; - rdfs:label "Get meter data" . - -saref:State a owl:Class ; - rdfs:comment "The state in which a device can be found, e.g, ON/OFF/STANDBY, or ONLINE/OFFLINE. We propose here a list of states that are relevant for the purpose of SAREF, but this list can be extended." ; - rdfs:label "State" . - -saref:Meter a owl:Class ; - rdfs:comment "A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction." ; - rdfs:label "Meter" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:MeteringFunction - ] . - -saref:GetCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Get command" ; - rdfs:subClassOf saref:Command . - -saref:PressureUnit a owl:Class ; - rdfs:comment "The unit of measure for pressure" ; - rdfs:label "Pressure unit" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:GetCurrentMeterValueCommand - a owl:Class ; - rdfs:comment "A type of get command" ; - rdfs:label "Get current meter value command" ; - rdfs:subClassOf saref:GetCommand . - -saref:OnOffState a owl:Class ; - rdfs:comment "A type of state" ; - rdfs:label "On off state" ; - rdfs:subClassOf saref:State . - -saref:Power a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt). Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined." ; - rdfs:label "Power" ; - rdfs:subClassOf saref:Property . - -saref:hasModel a owl:DatatypeProperty ; - rdfs:comment "A relationship identifying the model of an entity (e.g., device)" ; - rdfs:label "has model" ; - rdfs:range xsd:string . - -saref:EnergyMeter a owl:Class ; - rdfs:comment "An energy meter is a device of category saref:Meter that consists of a meter, accomplishes the tasks saref:MeterReading and saref:EnergyEfficiency, performs the saref:MeteringFunction and is used for the purpose of measuring the saref:Energy property" ; - rdfs:label "Energy meter" ; - rdfs:subClassOf saref:Meter ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:MeterReading ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:EnergyEfficiency ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:measuresProperty ; - owl:someValuesFrom saref:Energy - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom saref:Meter - ] . - -saref:Start a saref:StartState , saref:StartCommand , owl:NamedIndividual ; - rdfs:comment "The value START. It is used to instantiate different classes such as the StartCommand class and StartState class. " ; - rdfs:label "Start" . - -saref:Temperature a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin)" ; - rdfs:label "Temperature" ; - rdfs:subClassOf saref:Property . - -saref:OnOffFunction a owl:Class ; - rdfs:comment "An actuating function that allows to switch on and off an actuator" ; - rdfs:label "On off function" ; - rdfs:subClassOf saref:ActuatingFunction ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:OffCommand saref:OnCommand saref:ToggleCommand ) - ] ; - owl:onProperty saref:hasCommand - ] . - -saref:relatesToProperty - a owl:ObjectProperty ; - rdfs:comment "A relationship between a measurement and the property it relates to" ; - rdfs:label "relates to property"@en . - -saref:MicroRenewable a owl:Class ; - rdfs:comment "A device that generates renewable energy from natural resources such as teh sun, wind and water" ; - rdfs:label "Micro renewable" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:EnergyEfficiency ; - owl:onProperty saref:accomplishes - ] . - -om:kilowatt a saref:PowerUnit , owl:NamedIndividual ; - rdfs:label "kilowatt" . - -saref:isControlledByDevice - a owl:ObjectProperty ; - rdfs:comment "A relationship specifying the devices that can control a certain property"@en ; - rdfs:label "is controlled by device" . - -saref:UnitOfMeasure a owl:Class ; - rdfs:comment "The unit of measure is a standard for measurement of a quantity, such as a Property. For example, Power is a property and Watt is a unit of power that represents a definite predetermined power: when we say 10 Watt, we actually mean 10 times the definite predetermined power called \"watt\". Our definition is based on the definition of unit of measure in the Ontology of units of Measure (OM). We propose here a list of some units of measure that are relevant for the purpose of SAREF, but this list can be extended, also using some other ontologies rather than the Ontology of units of Measure (OM)." ; - rdfs:isDefinedBy ; - rdfs:label "Unit of measure" . - -saref:Pressure a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal)" ; - rdfs:label "Pressure" ; - rdfs:subClassOf saref:Property . - -saref:Price a owl:Class ; - rdfs:comment "A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency" ; - rdfs:label "Price" ; - rdfs:subClassOf saref:Property . - -saref:ActuatingFunction - a owl:Class ; - rdfs:comment "A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off)" ; - rdfs:label "Actuating function" ; - rdfs:subClassOf saref:Function . - -saref:hasState a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the type of state of a device" ; - rdfs:label "has state" . - -saref:CloseState a owl:Class ; - rdfs:comment "The state of a device that is CLOSE" ; - rdfs:label "Close state" ; - rdfs:subClassOf saref:OpenCloseState . - -saref:OffState a owl:Class ; - rdfs:comment "The state of a device that is ON" ; - rdfs:label "Off state" ; - rdfs:subClassOf saref:OnOffState . - -saref:Close a saref:CloseState , saref:CloseCommand , owl:NamedIndividual ; - rdfs:comment "The value CLOSE. It is used to instantiate different classes such as the CloseCommand class and CloseState class, for example. " ; - rdfs:label "Close" . - -saref:WellBeing a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "WellBeing" . - -saref:MeterReading a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Meter reading" . - -saref:hasName a owl:DatatypeProperty ; - rdfs:comment "A relationship providing the name of an entity (e.g., device)" ; - rdfs:label "has name" ; - rdfs:range xsd:string . - -saref:Occupancy a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy" ; - rdfs:label "Occupancy" ; - rdfs:subClassOf saref:Property . - -saref:OpenCloseState a owl:Class ; - rdfs:comment "A type of state" ; - rdfs:label "Open close state" ; - rdfs:subClassOf saref:State . - -saref:Service a owl:Class ; - rdfs:comment "A service is a representation of a function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. A service can represent one or more functions. A Service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A Service must specify the device that is offering the service and the function(s) to be represented." ; - rdfs:label "Service" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Function ; - owl:onProperty saref:represents - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Device ; - owl:onProperty saref:isOfferedBy - ] . - -saref:isOfferedBy a owl:ObjectProperty ; - rdfs:comment "A relationship between a service and a device that offers the service" ; - rdfs:label "is offered by" ; - owl:inverseOf saref:offers . - -saref:hasMeterReading - a owl:ObjectProperty ; - rdfs:comment "A relationship between a metering function and the measurement of the reading" ; - rdfs:label "has meter reading" . - -saref:SetAbsoluteLevelCommand - a owl:Class ; - rdfs:comment "A type of set level command" ; - rdfs:label "Set absolute level command" ; - rdfs:subClassOf saref:SetLevelCommand . - -saref:OpenCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Open command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:OpenCloseState ; - owl:onProperty saref:actsUpon - ] . - -saref:watt_hour a saref:EnergyUnit , owl:NamedIndividual ; - rdfs:comment "The Watt Hor is a unit of energy equivalent to one watt (1 W) of power expended for one hour (1 h) of time. An energy expenditure of 1 Wh represents 3600 joules " ; - rdfs:label "watt hour" . - -saref:StepDownCommand - a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Step down command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:MultiLevelState ; - owl:onProperty saref:actsUpon - ] ; - owl:disjointWith saref:StepUpCommand . - -saref:OpenCloseFunction - a owl:Class ; - rdfs:comment "An actuating function that allows to open and close a device" ; - rdfs:label "Open close function" ; - rdfs:subClassOf saref:ActuatingFunction ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:CloseCommand saref:OpenCommand ) - ] ; - owl:onProperty saref:hasCommand - ] . - -saref:Energy a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. " ; - rdfs:label "Energy" ; - rdfs:subClassOf saref:Property . - -saref:isMeasuredByDevice - a owl:ObjectProperty ; - rdfs:comment "A relationship specifying the devices that can measure a certain property"@en ; - rdfs:label "is measured by device" . - -saref:StepUpCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Step up command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:MultiLevelState ; - owl:onProperty saref:actsUpon - ] . - -saref:StopState a owl:Class ; - rdfs:comment "The state of a device that is STOPPED" ; - rdfs:label "Stop state" ; - rdfs:subClassOf saref:StartStopState . - -saref:hasTime a owl:ObjectProperty ; - rdfs:comment "A relationship to associate time information to an entity" ; - rdfs:label "has time" . - -saref:ToggleCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Toggle command" ; - rdfs:subClassOf saref:Command . - -saref:PowerUnit a owl:Class ; - rdfs:comment "The unit of measure for power" ; - rdfs:label "Power unit" ; - rdfs:subClassOf saref:UnitOfMeasure . - -om:bar a saref:PressureUnit , owl:NamedIndividual ; - rdfs:comment "The bar is a unit of pressure defined as 100 000 pascal."@en ; - rdfs:label "bar" . - -saref:Gas a owl:Class ; - rdfs:comment "A type of commodity" ; - rdfs:label "Gas" ; - rdfs:subClassOf saref:Commodity . - -saref:TemperatureUnit - a owl:Class ; - rdfs:comment "The unit of measure for temperature" ; - rdfs:label "Temperature unit" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:hasMeterReadingType - a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the reading type of a measurement (e.g., Water, Gas, Pressure , Energy , Power, etc.)" ; - rdfs:label "has meter reading type" . - -saref:Property a owl:Class ; - rdfs:comment "Anything that can be sensed, measured or controlled in households, common public buildings or offices. We propose here a list of properties that are relevant for the purpose of SAREF, but this list can be extended." ; - rdfs:label "Property" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Measurement ; - owl:onProperty saref:relatesToMeasurement - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Device ; - owl:onProperty saref:isMeasuredByDevice - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Device ; - owl:onProperty saref:isControlledByDevice - ] . - -om:pound_sterling a saref:Currency , owl:NamedIndividual ; - rdfs:label "Great Britain pound sterling" . - -saref:Storage a owl:Class ; - rdfs:comment "A type of energy-related device that stores energy" ; - rdfs:label "Storage" ; - rdfs:subClassOf saref:EnergyRelated . - -saref:StartCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Start command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:StartStopState ; - owl:onProperty saref:actsUpon - ] ; - owl:disjointWith saref:StopCommand . - -saref:TemperatureSensor - a owl:Class ; - rdfs:comment "A device that consists of a sensor, has category saref:Sensor, performs the saref:SensingFunction and is used for the purpose of sensing a property of type saref:Temperature" ; - rdfs:label "Temperature sensor" ; - rdfs:subClassOf saref:Sensor ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Comfort ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:measuresProperty ; - owl:someValuesFrom saref:Temperature - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:SensingFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom saref:Sensor - ] . - -saref:StartState a owl:Class ; - rdfs:comment "The state of a device that is STARTED" ; - rdfs:label "Start state" ; - rdfs:subClassOf saref:StartStopState . - -saref:hasValue a owl:DatatypeProperty ; - rdfs:comment "A relationship defining the value of a certain property, e.g., energy or power" ; - rdfs:label "has value" . - -saref:Device a owl:Class ; - rdfs:comment "A tangible object designed to accomplish a particular task in households, common public buildings or offices. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function. Devices can be structured in categories (subclasses) that reflect the different domain in which a device is used, e.g., smart appliances domain (subclass FunctionRelated) vs. building domain (subclass BuildingRelated) vs. smart grid domain (subclass EnergyRelated). New categories can be defined,if needed, to reflect other differences, for example different points of view, such as the point of view of the device's user vs. the point of view of the device's manufacturer. We propose a list of devices that are relevant for the purpose of SAREF, but this list can be extended." ; - rdfs:label "Device" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Profile ; - owl:onProperty saref:hasProfile - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger ; - owl:onProperty saref:hasDescription - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:State ; - owl:onProperty saref:hasState - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Service ; - owl:onProperty saref:offers - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Property ; - owl:onProperty saref:controlsProperty - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Measurement ; - owl:onProperty saref:makesMeasurement - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Property ; - owl:onProperty saref:measuresProperty - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Task ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Device ; - owl:onProperty saref:consistsOf - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Function ; - owl:onProperty saref:hasFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Commodity ; - owl:onProperty saref:isUsedFor - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:Energy saref:Power ) - ] ; - owl:onProperty saref:hasTypicalConsumption - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger ; - owl:onProperty saref:hasModel - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger ; - owl:onProperty saref:hasManufacturer - ] . - -saref:SwitchOnService - a owl:Class ; - rdfs:comment "A type of service that represents an on/off function to the network" ; - rdfs:label "Switch on service" ; - rdfs:subClassOf saref:Service ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:represents ; - owl:someValuesFrom saref:OnOffFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:isOfferedBy ; - owl:someValuesFrom saref:LightSwitch - ] . - -saref:GetMeterDataCommand - a owl:Class ; - rdfs:comment "A type of get command" ; - rdfs:label "Get meter data command" ; - rdfs:subClassOf saref:GetCommand . - -saref:Washing a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Washing" . - -saref:DoorSwitch a owl:Class ; - rdfs:comment "A device of category saref:Actuator that consists of a switch, accomplishes the task saref:Safety, performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState." ; - rdfs:label "Door switch" ; - rdfs:subClassOf saref:Switch ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Safety ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasState ; - owl:someValuesFrom saref:OpenCloseState - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:OpenCloseFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom saref:Switch - ] . - -saref:CloseCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Close command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:OpenCloseState ; - owl:onProperty saref:actsUpon - ] ; - owl:disjointWith saref:OpenCommand . - -saref:Cleaning a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Cleaning" . - -om:kelvin a saref:TemperatureUnit , owl:NamedIndividual ; - rdfs:comment "The kelvin is a unit of temperature defined as 1/273.16 of the thermodynamic temperature of the triple point of water."@en ; - rdfs:label "kelvin" . - -saref:EnergyEfficiency - a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "EnergyEfficiency" . - -saref:Entertainment a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Entertainment" . - -saref:hasSensorType a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) " ; - rdfs:label "has sensor type" . - -saref:hasProfile a owl:ObjectProperty ; - rdfs:comment "A relationship associating a profile to a certain entity (e.g., a device)" ; - rdfs:label "has profile" . - -saref:hasDescription a owl:DatatypeProperty ; - rdfs:comment "A relationship providing a description of an entity (e.g., device)" ; - rdfs:label "has description" ; - rdfs:range xsd:string . - -saref:hasManufacturer - a owl:DatatypeProperty ; - rdfs:comment "A relationship identifying the manufacturer of an entity (e.g., device)" ; - rdfs:label "has manufacturer" ; - rdfs:range xsd:string . - -time:TemporalUnit rdfs:comment "The unit of measure for time" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:Load a owl:Class ; - rdfs:comment "A type of energy-related device that consumes energy" ; - rdfs:label "Load" ; - rdfs:subClassOf saref:EnergyRelated . - -saref:Open a saref:OpenState , saref:OpenCommand , owl:NamedIndividual ; - rdfs:comment "The value OPEN. It is used to instantiate different classes such as the OpenCommand class and OpenState class. " ; - rdfs:label "Open" . - -saref:Lighting a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Lighting" . - -saref:IlluminanceUnit - a owl:Class ; - rdfs:comment "The unit of measure for light" ; - rdfs:label "Illuminance unit" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:Smoke a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for smoke" ; - rdfs:label "Smoke" ; - rdfs:subClassOf saref:Property . - -om:euro a saref:Currency , owl:NamedIndividual ; - rdfs:label "euro"@en . - -saref:Drying a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Drying" . - -saref:hasTypicalConsumption - a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the typical (energy or power) consumption of a device" ; - rdfs:label "has typical consumption" . - -saref:EnergyUnit a owl:Class ; - rdfs:comment "The unit of measure for energy" ; - rdfs:label "Energy unit" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:Profile a owl:Class ; - rdfs:comment "A specification associated to a device to collect information about a certain Property (e.g., Energy) or Commodity (e.g.Water) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property or Commodity (saref:isAbout), can be calculated over a time span (saref:hasTime ) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located."@en ; - rdfs:label "Profile"@en ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:Commodity saref:Property ) - ] ; - owl:onProperty saref:isAbout - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Time ; - owl:onProperty saref:hasTime - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Price ; - owl:onProperty saref:hasPrice - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Profile ; - owl:onProperty saref:consistsOf - ] . - -saref:isMeasuredIn a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the unit of measure used for a certain entity." ; - rdfs:label "is measured in" . - -saref:SmokeSensor a owl:Class ; - rdfs:comment "A device that consists of a sensor, has category saref:Sensor, performs the saref:SensingFunction and saref:EventFunction (which notifies that a certain threshold has been exceeded), and is used for the purpose of sensing a property of type saref:Smoke." ; - rdfs:label "Smoke sensor" ; - rdfs:subClassOf saref:Sensor ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Safety ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:measuresProperty ; - owl:someValuesFrom saref:Smoke - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:SensingFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:EventFunction - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom saref:Sensor - ] . - -saref:Toggle a saref:ToggleCommand , owl:NamedIndividual ; - rdfs:comment "The value TOGGLE. It is used to instantiate the the ToggleCommand class" ; - rdfs:label "Toggle" . - -saref:Water a owl:Class ; - rdfs:comment "A type of commodity" ; - rdfs:label "Water" ; - rdfs:subClassOf saref:Commodity . - -saref:relatesToMeasurement - a owl:ObjectProperty ; - rdfs:comment "A relationship between a property and the measurements it relates to" ; - rdfs:label "relates to measurement"@en . - -om:kilowatt_hour a saref:EnergyUnit , owl:NamedIndividual ; - rdfs:comment "The kilowatt hour is a unit of energy equal to 1,000 watt-hours, or 3.6 megajoules." ; - rdfs:label "kilowatt hour" . - -saref:Off a saref:OffState , saref:OffCommand , owl:NamedIndividual ; - rdfs:comment "The value OFF. It is used to instantiate different classes such as the OffCommand class and OffState class. " ; - rdfs:label "Off " . - -saref:WashingMachine a owl:Class ; - rdfs:comment "A device of category saref:Appliance and saref:Load that accomplishes the task saref:Washing, performs an actuating function of type saref:StartStopFunction, can be found in the state saref:StartStopState, and can have a saref:Profile that characterizes its energy consumption. " ; - rdfs:label "Washing machine" ; - rdfs:subClassOf saref:Load , saref:Appliance ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Washing ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasState ; - owl:someValuesFrom saref:StartStopState - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasProfile ; - owl:someValuesFrom saref:Profile - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:StartStopFunction - ] . - -saref:Network a owl:Class ; - rdfs:comment "A device used to connect other devices in a network, such as hub, switch or router in a Local Area Network (LAN). " ; - rdfs:label "Network" ; - rdfs:subClassOf saref:FunctionRelated . - -saref:Task a owl:Class ; - rdfs:comment "The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended." ; - rdfs:label "Task" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Device ; - owl:onProperty saref:isAccomplishedBy - ] . - -saref:isAccomplishedBy - a owl:ObjectProperty ; - rdfs:comment "A relationship indentifying the task accomplished by a certain entity (e.g., a device)" ; - rdfs:label "is accomplished by" . - -saref:represents a owl:ObjectProperty ; - rdfs:comment "A relationship between a service and a function." ; - rdfs:label "represents" . - -om:degree_Celsius a saref:TemperatureUnit , owl:NamedIndividual ; - rdfs:comment "The degree Celsius is a unit of temperature defined as 1 kelvin."@en ; - rdfs:label "degree Celsius" . - -saref:OpenState a owl:Class ; - rdfs:comment "The state of a device that is OPEN " ; - rdfs:label "Open state" ; - rdfs:subClassOf saref:OpenCloseState . - -saref:OnState a owl:Class ; - rdfs:comment "The state of a device that is OFF " ; - rdfs:label "On state" ; - rdfs:subClassOf saref:OnOffState . - -saref:Humidity a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit" ; - rdfs:label "Humidity" ; - rdfs:subClassOf saref:Property . - -saref:Sensor a owl:Class ; - rdfs:comment "A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. Further, a device of category saref:Sensor that performs a saref:SensingFunction." ; - rdfs:label "Sensor" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:SensingFunction - ] . - -saref:OffCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Off command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:OnOffState ; - owl:onProperty saref:actsUpon - ] ; - owl:disjointWith saref:OnCommand . - -saref:Electricity a owl:Class ; - rdfs:comment "A type of commodity" ; - rdfs:label "Electricity" ; - rdfs:subClassOf saref:Commodity . - -saref:Generator a owl:Class ; - rdfs:comment "A type of energy-related device that generates energy" ; - rdfs:label "Generator" ; - rdfs:subClassOf saref:EnergyRelated . - -om:United_States_dollar - a saref:Currency , owl:NamedIndividual ; - rdfs:label "United States dollar"@en . - -saref:Currency a owl:Class ; - rdfs:comment "The unit of measure for price" ; - rdfs:label "Currency" ; - rdfs:subClassOf saref:UnitOfMeasure . - -saref:Time a owl:Class ; - rdfs:comment "A saref:Property that allows to specify the time concept in terms of instants or intervals according to the imported W3C Time ontology." ; - rdfs:label "Time" ; - rdfs:subClassOf saref:Property ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom time:TemporalEntity - ] . - -saref:hasThresholdMeasurement - a owl:ObjectProperty ; - rdfs:comment "A relationship associated with an event function to notify that a certain threshold measurement has been exceeded" ; - rdfs:label "has threshold measurement" . - -saref:GetMeterHistoryCommand - a owl:Class ; - rdfs:comment "A type of get command" ; - rdfs:label "Get meter history command" ; - rdfs:subClassOf saref:GetCommand . - -saref:Coal a owl:Class ; - rdfs:comment "A type of commodity" ; - rdfs:label "Coal" ; - rdfs:subClassOf saref:Commodity . - -saref:BuildingRelated - a owl:Class ; - rdfs:comment "A category that includes devices as described by building related data models, such as IFC and FIEMSER " ; - rdfs:label "Building related" ; - rdfs:subClassOf saref:Device . - -saref:hasCommand a owl:ObjectProperty ; - rdfs:comment "A relationship between an entity (such as a function) and a command" ; - rdfs:label "has command" ; - owl:inverseOf saref:isCommandOf . - -saref:SetAbsoluteLevel - a saref:SetAbsoluteLevelCommand , owl:NamedIndividual ; - rdfs:comment "The value SET ABSOLUTE LEVEL. It is used to instantiate classes such as the SetAbsoluteLevelCommand class. " ; - rdfs:label "Set absolute level" . - -saref:Safety a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Safety" . - -om:degree_Fahrenheit a saref:TemperatureUnit , owl:NamedIndividual ; - rdfs:comment "The degree Fahrenheit is a unit of temperature defined as 5.555556e-1 kelvin."@en ; - rdfs:label "degree Fahrenheit" . - -saref:PauseCommand a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Pause command" ; - rdfs:subClassOf saref:Command . - -saref:SetLevelCommand - a owl:Class ; - rdfs:comment "A type of command" ; - rdfs:label "Set level command" ; - rdfs:subClassOf saref:Command ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:MultiLevelState ; - owl:onProperty saref:actsUpon - ] . - -saref:MultiLevelState - a owl:Class ; - rdfs:comment "A type of state" ; - rdfs:label "Multi level state" ; - rdfs:subClassOf saref:State . - -saref:Function a owl:Class ; - rdfs:comment "The functionality necessary to accomplish the task for which a Device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. " ; - rdfs:label "Function" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Command ; - owl:onProperty saref:hasCommand - ] . - -saref:Command a owl:Class ; - rdfs:comment "A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended." ; - rdfs:label "Command" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality "1"^^xsd:nonNegativeInteger ; - owl:onProperty saref:hasDescription - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Function ; - owl:onProperty saref:isCommandOf - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:State ; - owl:onProperty saref:actsUpon - ] . - -saref:LightSwitch a owl:Class ; - rdfs:comment "A device of category saref:Actuator that consists of a switch, accomplishes the task saref:Lighting, performs the saref:OnOffFunction, measures the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service." ; - rdfs:label "Light switch" ; - rdfs:subClassOf saref:Switch ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Lighting ; - owl:onProperty saref:accomplishes - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:offers ; - owl:someValuesFrom saref:SwitchOnService - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:consistsOf ; - owl:someValuesFrom saref:Switch - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasState ; - owl:someValuesFrom saref:OnOffState - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:measuresProperty ; - owl:someValuesFrom saref:Light - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:OnOffFunction - ] . - -saref:GetMeterHistory - a saref:GetMeterHistoryCommand , owl:NamedIndividual ; - rdfs:comment "The command GET METER HISTORY. It is used to instantiate the GetMeterHistoryCommand class. " ; - rdfs:label "Get meter history" . - -saref:isCommandOf a owl:ObjectProperty ; - rdfs:comment "A relationship between a command and a function." ; - rdfs:label "is command of" . - -saref: a owl:Ontology ; - rdfs:comment "Information about changes compared to version 1.1.1: (1)The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings (https://w3id.org/def/saref4bldg), including the reuse of the W3C® WGS84 geo positioning vocabulary; (2)The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class; (3)The information specific for energy efficiency has been moved to the SAREF4ENER extension (https://w3id.org/saref4ener). For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension (https://w3id.org/saref4ener); (4) The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy); (5)The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension (https://w3id.org/def/saref4envi), in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property); (6)Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed; (7)The saref:UnitOfMeasure subclassesre use individuals from the OM ontology for unit of measures (http://www.wurvoc.org/vocabularies/om-1.6/), but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used; (8)The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes; (9)The subclasses of saref:Task have been transormed in individuals; (10)The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class." , "This ontology has been manually edited for publication on the ETSI portal and consolidation of metadata in the context of STF-556. More work is required to update the sources on the ETSI forge." ; - dcterms:contributor , , , ; - dcterms:created "2015-02-10"^^xsd:date ; - dcterms:description "The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets (standards/protocols/datamodels/etc.) in the smart appliances domain. The SAREF ontology provides building blocks that allow separation and recombination of different parts of the ontology depending on specific needs. The starting point of SAREF is the concept of device (e.g., a switch). Devices are tangible objects designed to accomplish a particular task in households, common public buildings or offices. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs the start and stop function. The SAREF ontology offers a lists of basic functions that can be eventually combined in order to have more complex functions in a single device. For example, a switch offers an actuating function of type 'switching on/off'. Each function has some associated commands, which can also be picked up as building blocks from a list. For example, the 'switching on/off' is associated with the commands 'switch on', 'switch off' and 'toggle'. Depending on the function(s) it accomplishes, a device can be found in some corresponding states that are also listed as building blocks. When connected to a network, a device offers a service, which is a representation of a function to a network that makes the function discoverable, registerable and remotely controllable by other devices in the network. A service can represent one or more functions. A service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A service must specify the device that is offering the service and the function(s) to be represented. A device in the SAREF ontology is also characterized by a profile that can be used to optimize some property, such as Energy, in a home or office that are part of a building." ; - dcterms:issued "2019-06-11"^^xsd:date ; - dcterms:license ; - dcterms:modified "2018-05-02"^^xsd:date ; - dcterms:publisher ; - dcterms:source , ; - dcterms:title "SAREF: the Smart Applications REFerence ontology" ; - vann:preferredNamespacePrefix "saref" ; - vann:preferredNamespaceUri "https://saref.etsi.org/saref#" ; - owl:versionIRI ; - owl:versionInfo "2.1.1" . - -om:pascal a saref:PressureUnit , owl:NamedIndividual ; - rdfs:comment "The pascal is a unit of pressure and stress defined as newton divided by square metre = joule divided by cubic metre = kilogram divided by metre second squared."@en ; - rdfs:label "pascal" . - -saref:hasFunction a owl:ObjectProperty ; - rdfs:comment "A relationship identifying the type of function of a device" ; - rdfs:label "has function" . - -saref:Notify a saref:NotifyCommand , owl:NamedIndividual ; - rdfs:comment "The value NOTIFY. It is used to instantiate the NotifyCommand." ; - rdfs:label "Notify" . - -saref:Comfort a saref:Task , owl:NamedIndividual ; - rdfs:comment "A type of task for which a device is designed" ; - rdfs:label "Comfort" . - -saref:makesMeasurement - a owl:ObjectProperty ; - rdfs:comment "A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates."@en ; - rdfs:label "makes measurement"@en . - -saref:actsUpon a owl:ObjectProperty ; - rdfs:comment "A relationship between a command and a state" ; - rdfs:label "acts upon" . - -saref:offers a owl:ObjectProperty ; - rdfs:comment "A relationship between a device and a service" ; - rdfs:label "offers" . - -saref:Commodity a owl:Class ; - rdfs:comment "A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. " ; - rdfs:label "Commodity" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:UnitOfMeasure ; - owl:onProperty saref:isMeasuredIn - ] . - -saref:consistsOf a owl:ObjectProperty ; - rdfs:comment "A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor)" ; - rdfs:label "consists of" . - -saref:accomplishes a owl:ObjectProperty ; - rdfs:comment "A relationship between a certain entity (e.g., a device) and the task it accomplishes" ; - rdfs:label "accomplishes" ; - owl:inverseOf saref:isAccomplishedBy . - -saref:Pause a saref:PauseCommand , owl:NamedIndividual ; - rdfs:comment "The value PAUSE. It is used to instantiate classes such as the PauseCommand class." ; - rdfs:label "Pause" . - -saref:Switch a owl:Class ; - rdfs:comment "A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction" ; - rdfs:label "Switch" ; - rdfs:subClassOf saref:Actuator . - -om:watt a saref:PowerUnit , owl:NamedIndividual ; - rdfs:comment "The watt is a unit of power defined as joule divided by second = newton times metre divided by second = volt times ampere = kilogram times square metre divided by second to the power 3."@en ; - rdfs:label "watt" . - -saref:Motion a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion" ; - rdfs:label "Motion" ; - rdfs:subClassOf saref:Property . - -saref:Measurement a owl:Class ; - rdfs:comment "Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement."@en ; - rdfs:label "Measurement"@en ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onDataRange xsd:float ; - owl:onProperty saref:hasValue ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom xsd:dateTime ; - owl:onProperty saref:hasTimestamp - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onClass saref:Property ; - owl:onProperty saref:relatesToProperty ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onClass saref:UnitOfMeasure ; - owl:onProperty saref:isMeasuredIn ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Property ; - owl:onProperty saref:relatesToProperty - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:UnitOfMeasure ; - owl:onProperty saref:isMeasuredIn - ] . - -saref:EventFunction a owl:Class ; - rdfs:comment "A function that allows to notify another device that a certain threshold value has been exceeded." ; - rdfs:label "Event function" ; - rdfs:subClassOf saref:Function ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass saref:Measurement ; - owl:onProperty saref:hasThresholdMeasurement - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:NotifyCommand ; - owl:onProperty saref:hasCommand - ] . - -saref:StepDown a saref:StepDownCommand , owl:NamedIndividual ; - rdfs:comment "The value STEP DOWN. It is used to instantiate the StepDownCommand class. " ; - rdfs:label "Step down" . - -saref:Actuator a owl:Class ; - rdfs:comment "A device responsible for moving or controlling a mechanism or system by performing an actuating function" ; - rdfs:label "Actuator" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:someValuesFrom saref:ActuatingFunction - ] . - -saref:SensingFunction - a owl:Class ; - rdfs:comment "A function that allows to transmit data from sensors, such as measurement values (e.g., temperature) or sensing data (e.g., occupancy)" ; - rdfs:label "Sensing function" ; - rdfs:subClassOf saref:Function ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Property ; - owl:onProperty saref:hasSensorType - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:GetSensingDataCommand ; - owl:onProperty saref:hasCommand - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onProperty saref:hasSensingRange ; - owl:someValuesFrom saref:Measurement - ] . - -saref:Multimedia a owl:Class ; - rdfs:comment "A device designed to display, store, record or play multimedia content such as audio, images, animation, video " ; - rdfs:label "Multimedia" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Entertainment ; - owl:onProperty saref:accomplishes - ] . - -saref:measuresProperty - a owl:ObjectProperty ; - rdfs:comment "A relationship specifying the Property that can be measured by a certain Device"@en ; - rdfs:label "measures property"@en . - -saref:StepUp a saref:StepUpCommand , owl:NamedIndividual ; - rdfs:comment "The value STEP UP. It is used to instantiate the StepUpCommand class. " ; - rdfs:label "Step up" . - -saref:Appliance a owl:Class ; - rdfs:comment "An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking" ; - rdfs:label "Appliance" ; - rdfs:subClassOf saref:FunctionRelated . - -saref:LightingDevice a owl:Class ; - rdfs:comment "A device used for illumination, irradiation, signaling, or projection" ; - rdfs:label "Lighting device" ; - rdfs:subClassOf saref:FunctionRelated ; - rdfs:subClassOf [ a owl:Restriction ; - owl:hasValue saref:Comfort ; - owl:onProperty saref:accomplishes - ] . - -saref:hasSensingRange - a owl:ObjectProperty ; - rdfs:comment "A relationship between a sensing function and a measurement identifying the range of a sensor detection" ; - rdfs:label "has sensing range " . - -saref:Light a owl:Class ; - rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux)" ; - rdfs:label "Light" ; - rdfs:subClassOf saref:Property . - -saref:StartStopFunction - a owl:Class ; - rdfs:comment "An actuating function that allows to start and stop a device" ; - rdfs:label "Start stop function" ; - rdfs:subClassOf saref:ActuatingFunction ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:StartCommand saref:StopCommand ) - ] ; - owl:onProperty saref:hasCommand - ] . - -saref:MeteringFunction - a owl:Class ; - rdfs:comment "A function that allows to get data from a meter, such as current meter reading or instantaneous demand" ; - rdfs:label "Metering function" ; - rdfs:subClassOf saref:Function ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:Commodity saref:Property ) - ] ; - owl:onProperty saref:hasMeterReadingType - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom saref:Measurement ; - owl:onProperty saref:hasMeterReading - ] ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom [ a owl:Class ; - owl:unionOf ( saref:GetCurrentMeterValueCommand saref:GetMeterDataCommand saref:GetMeterHistoryCommand ) - ] ; - owl:onProperty saref:hasCommand - ] . - -saref:EnergyRelated a owl:Class ; - rdfs:comment "A category that considers devices based on energy consumption information and profiles to optimize energy efficiency." ; - rdfs:label "Energy related" ; - rdfs:subClassOf saref:Device . - -saref:hasPrice a owl:ObjectProperty ; - rdfs:comment "A relationships indentifying the price associated to an entity" ; - rdfs:label "has price" . diff --git a/src/main/resources/saref-portal-generator/public/saref/latest/saref.rdf b/src/main/resources/saref-portal-generator/public/saref/latest/saref.rdf deleted file mode 100644 index bc9cb2af85fde5f5b09d0e0d463f273989e80acc..0000000000000000000000000000000000000000 --- a/src/main/resources/saref-portal-generator/public/saref/latest/saref.rdf +++ /dev/null @@ -1,1857 +0,0 @@ - - - - saref - - Information about changes compared to version 1.1.1: (1)The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class, saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated into the SAREF4BLDG extension related to buildings (https://w3id.org/def/saref4bldg), including the reuse of the W3C® WGS84 geo positioning vocabulary; (2)The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class; (3)The information specific for energy efficiency has been moved to the SAREF4ENER extension (https://w3id.org/saref4ener). For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension (https://w3id.org/saref4ener); (4) The subclasses of the saref:Energy class have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy); (5)The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension (https://w3id.org/def/saref4envi), in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property); (6)Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed; (7)The saref:UnitOfMeasure subclassesre use individuals from the OM ontology for unit of measures (http://www.wurvoc.org/vocabularies/om-1.6/), but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used; (8)The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes; (9)The subclasses of saref:Task have been transormed in individuals; (10)The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class. - 2.1.1 - https://saref.etsi.org/saref# - - The Smart Appliances REFerence (SAREF) ontology is a shared model of consensus that facilitates the matching of existing assets (standards/protocols/datamodels/etc.) in the smart appliances domain. The SAREF ontology provides building blocks that allow separation and recombination of different parts of the ontology depending on specific needs. The starting point of SAREF is the concept of device (e.g., a switch). Devices are tangible objects designed to accomplish a particular task in households, common public buildings or offices. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs the start and stop function. The SAREF ontology offers a lists of basic functions that can be eventually combined in order to have more complex functions in a single device. For example, a switch offers an actuating function of type 'switching on/off'. Each function has some associated commands, which can also be picked up as building blocks from a list. For example, the 'switching on/off' is associated with the commands 'switch on', 'switch off' and 'toggle'. Depending on the function(s) it accomplishes, a device can be found in some corresponding states that are also listed as building blocks. When connected to a network, a device offers a service, which is a representation of a function to a network that makes the function discoverable, registerable and remotely controllable by other devices in the network. A service can represent one or more functions. A service is offered by a device that wants (a certain set of) its function(s) to be discoverable, registerable, remotely controllable by other devices in the network. A service must specify the device that is offering the service and the function(s) to be represented. A device in the SAREF ontology is also characterized by a profile that can be used to optimize some property, such as Energy, in a home or office that are part of a building. - 2015-02-10 - This ontology has been manually edited for publication on the ETSI portal and consolidation of metadata in the context of STF-556. More work is required to update the sources on the ETSI forge. - - SAREF: the Smart Applications REFerence ontology - 2018-05-02 - - - 2019-06-11 - - - - - - On command - A type of command - - - - - - - - - - - - - - - - Coal - A type of commodity - - - - - - On off state - A type of state - - - - - - Get sensing data command - A type of get command - - - - - - Start command - A type of command - - - - - - - - - - - - - - - - - - - Get meter data command - A type of get command - - - - - - Electricity - A type of commodity - - - - - - Light - A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux) - - - - - - Energy unit - The unit of measure for energy - - - - - - Metering function - A function that allows to get data from a meter, such as current meter reading or instantaneous demand - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Start state - The state of a device that is STARTED - - - - - - Energy related - A category that considers devices based on energy consumption information and profiles to optimize energy efficiency. - - - - - - Toggle command - A type of command - - - - - - Appliance - An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking - - - - - - Profile - A specification associated to a device to collect information about a certain Property (e.g., Energy) or Commodity (e.g.Water) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property or Commodity (saref:isAbout), can be calculated over a time span (saref:hasTime ) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Start stop function - An actuating function that allows to start and stop a device - - - - - - - - - - - - - - - - - - - - - Close command - A type of command - - - - - - - - - - - - - - - - - - - Task - The goal for which a device is designed (from a user perspective). For example, a washing machine is designed for the task of washing. We propose here a list of tasks that are relevant for the purpose of SAREF, but this list can be extended. - - - - - - 1 - - - - - - - - Measurement - Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement. - - - - 1 - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - Gas - A type of commodity - - - - - - Switch - A device of category saref:Actuator that performs an actuating function of type saref:OnOffFunction or saref:OpenCloseFunction - - - - - - Energy meter - An energy meter is a device of category saref:Meter that consists of a meter, accomplishes the tasks saref:MeterReading and saref:EnergyEfficiency, performs the saref:MeteringFunction and is used for the purpose of measuring the saref:Energy property - - - - - Meter reading - A type of task for which a device is designed - - - - - - - - - - - - - EnergyEfficiency - A type of task for which a device is designed - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Commodity - A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. - - - - - - - - - - - - - Generato