我正在做一个项目,asp.net 是我可能的选择之一(另一个是 php)。我需要实现一些语义功能来改进搜索。
我知道一些 php 框架支持语义,但我想知道 asp.net 是否有任何[最常用的]工具(第三方或内置)也支持此功能。
我一直在阅读有关这个主题的更多内容,我认为我真正寻找的是工具,以便不仅通过匹配单词而且还通过匹配其含义来为用户搜索提供更准确的结果。
如果语义网络术语引起混乱,我很抱歉,但我的指导老师是这样称呼它的
I'm doing a project and asp.net is one of my possible choices (the other one being php). I need to implement some semantic functionality to improve searches.
I know some php frameworks support semantics but i want to know if asp.net has any[The most used] tool (3rd party or built in) that will also support this.
I've been reading more about this subject and i think what i'm really looking for is tools in order to deliver more accurate results to user searches by not only matching word but its meanings.
I'm sorry if the semantic web term caused confusion but my guide teacher called it like that
发布评论
评论(3)
您应该查看 dotNetRDF 和 ARC PHP。
其他好资源
最后一篇是关于用语义标记 HTML 的推荐方法。改进搜索结果以包含含义可以通过多种方式完成,并且可能包括也可能不包括使用语义网络技术堆栈本身。也许您只是指向博客添加标签,或者诸如 SOLR 提供的分面搜索。您可能需要澄清您想要进行哪种搜索。
You should look into dotNetRDF and ARC PHP.
Other good resources
That last one is about the recommended way to markup HTML with semantic meaning. Improving your search results to include meaning can be done a number of ways and may or may not include using the semantic web technology stack per se. Perhaps you only mean adding tags to blogs, or faceted searching such as that provided by SOLR. You may need to clarify what kind of searching you want to do.
正如其他人所说,您需要澄清您想要做什么,虽然您已经稍微澄清了您的问题,但仍然不清楚您是否真的需要完整的语义 Web 技术堆栈。
您的项目可能完全可行,无需任何语义 Web 技术,只需使用 Lucene 和 SOLR 等标准文本索引系统即可。我相当确定这两个在 .Net 中都可用,我自己不是 PHP 开发人员,所以不确定是否有可用的 PHP 等效项。
如果您需要完整的语义 Web 技术堆栈,那么 harschware 建议的任一选项都不错(免责声明 - 我开发 dotNetRDF)。他们是否真正做你需要他们做的事情取决于你需要语义Web技术堆栈的哪些部分。两者都具有良好的 RDF 和 SPARQL 支持,但对 OWL 支持很少。
As others have said you need to clarify what you want to do, while you have clarified your question a little it is still not clear whether you actually need a full Semantic Web technology stack.
Your project may be completely doable without any Semantic Web tech just using standard text indexing systems like Lucene and SOLR. I'm fairly sure both of these are available in .Net, I'm not a PHP developer myself so not sure if there are usable PHP equivalents.
If you need a full Semantic Web technology stack then either of the options harschware has suggested are good (disclaimer - I develop dotNetRDF). Whether they actually do what you need them to do depends on what parts of the Semantic Web technology stack you need. Both have good RDF and SPARQL support but minimal OWL support.
“语义 Web”只是意味着使用适当的 html 标签来实现其定义的(语义)目的。这是通过不忽略较少使用的标签(标签、图例、字段集、引用等)、仅将表格用于表格数据,尤其是当更具体的标签确实更适合时不使用 div 或 span 来实现的......像那样。
考虑到这一点,asp.net 当然支持语义 Web。您可以将任何您想要的 html 放入 asp.net 页面中。 MVC 使这变得更容易,但您也可以使用 Webform 来做到这一点。
消除了这种限制后,我在开始新项目时的标准建议是从您所知道的开始。如果您已经了解 php 或 asp.net,请继续使用。与从头开始学习新平台相比,它将使您的工作效率更高,对问题的响应能力更强,并且犯的错误更少。
"Semantic Web" just means using the appropriate html tags for their defined (semantic) purpose. This is accomplished by not ignoring less-used tags (label, legend, fieldset, cite, etc), using table only for tabular data, and especially not using div or span when more-specific tags are really a better fit... things like that.
With this in mind, of course asp.net supports a semantic web. You can put any html you want into asp.net pages. MVC makes this easier, but you can do it with webforms, too.
With that constraint out of the way, my standard advice when beginning a new project is to start with what you know. If you already know php or asp.net, stick with that. It will allow you to be a lot more productive, more responsive to issues, and make fewer mistakes than you will if you're learning a new platform from scratch.