⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 musicshopontology.java

📁 JADE(JAVA Agent开发框架)是一个完全由JAVA语言开发的软件,它简化了多Agent系统的实现。
💻 JAVA
字号:
/**
 * ***************************************************************
 * JADE - Java Agent DEvelopment Framework is a framework to develop
 * multi-agent systems in compliance with the FIPA specifications.
 * Copyright (C) 2000 CSELT S.p.A.
 * 
 * GNU Lesser General Public License
 * 
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation,
 * version 2.1 of the License.
 * 
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA  02111-1307, USA.
 * **************************************************************
 */
package examples.content.musicShopOntology;

import jade.content.onto.*;
import jade.content.schema.*;
import jade.content.schema.facets.*;
import examples.content.ecommerceOntology.*;

/**
 * Ontology containing music related concepts.
 * @author Giovanni Caire - TILAB
 */
public class MusicShopOntology extends Ontology implements MusicShopVocabulary {
	// NAME
  public static final String ONTOLOGY_NAME = "Music-shop-ontology";
	
  // The singleton instance of this ontology
	private static Ontology theInstance = new MusicShopOntology(ECommerceOntology.getInstance());
	
	public static Ontology getInstance() {
		return theInstance;
	}
	
  /**
   * Constructor
   */
  private MusicShopOntology(Ontology base) {
  	super(ONTOLOGY_NAME, base);

    try {
    	add(new ConceptSchema(CD), CD.class);
    	add(new ConceptSchema(TRACK), Track.class);
    	add(new ConceptSchema(SINGLE), Single.class);
    	
    	ConceptSchema cs = (ConceptSchema) getSchema(CD);
    	cs.addSuperSchema((ConceptSchema) getSchema(ECommerceOntology.ITEM));
    	cs.add(CD_TITLE, (PrimitiveSchema) getSchema(BasicOntology.STRING));
    	cs.add(CD_TRACKS, (ConceptSchema) getSchema(TRACK), 1, ObjectSchema.UNLIMITED);
    	
    	cs = (ConceptSchema) getSchema(TRACK);
    	cs.add(TRACK_NAME, (TermSchema) getSchema(BasicOntology.STRING));
    	cs.add(TRACK_DURATION, (TermSchema) getSchema(BasicOntology.INTEGER), ObjectSchema.OPTIONAL);
    	cs.add(TRACK_PCM, (TermSchema) getSchema(BasicOntology.BYTE_SEQUENCE), ObjectSchema.OPTIONAL);
    	
    	cs = (ConceptSchema) getSchema(SINGLE);
    	cs.addSuperSchema((ConceptSchema) getSchema(CD));
    	// A SINGLE only includes two tracks 
    	cs.addFacet(CD_TRACKS, new CardinalityFacet(2, 2));
    } 
    catch (OntologyException oe) {
    	oe.printStackTrace();
    } 
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -