buildURLFragments( type, id, data ) {
		const urlFragments = get( this, "urlFragments" );
		let idFound = false;

		const url = String( type )
			.split( "/" )
			.map( fragment => fragment.replace( reURLFragment, ( _, key ) => {
				if ( key === "id" ) {
					idFound = true;
				}

				if ( hasOwnProperty.call( urlFragments, key ) ) {
					return urlFragments[ key ].call( this, type, id, data );
				}

				// unknown fragment
				throw new Error( `Unknown URL fragment: ${key}` );
			}) );

		// append ID if no :id fragment was defined and ID exists
		if ( !idFound && !isNone( id ) ) {
			url.push( id );
		}

		return url;
	}
Dynamic URL fragments
@param {Model} type
@param {(Number|String)?} id
@param {*?} data
@returns {String[]}